【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
我不确定为什么我无法检出我以前处理过的分支。 请参阅以下命令(注意: co
是checkout
的别名):
ramon@ramon-desktop:~/source/unstilted$ git branch -a
* develop
feature/datts_right
feature/user_controlled_menu
feature/user_controlled_site_layouts
master
remotes/origin/HEAD -> origin/master
remotes/origin/develop
remotes/origin/feature/datts_right
remotes/origin/master
ramon@ramon-desktop:~/source/unstilted$ git co feature/user_controlled_site_layouts
error: pathspec 'feature/user_controlled_site_layouts' did not match any file(s) known to git.
我不确定这意味着什么,而且在Google上找不到我能理解的任何东西。
我如何结帐该分支,我该怎么做才能打破这一分支?
更新 :
我找到了这篇文章 ,并运行git show-ref
给我:
97e2cb33914e763ff92bbe38531d3fd02408da46 refs/heads/develop
c438c439c66da3f2356d2449505c073549b221c1 refs/heads/feature/datts_right
11a90dae8897ceed318700b9af3019f4b4dceb1e refs/heads/feature/user_controlled_menu
c889b37a5ee690986935c9c74b71999e2cf3c6d7 refs/heads/master
c889b37a5ee690986935c9c74b71999e2cf3c6d7 refs/remotes/origin/HEAD
e7c17eb40610505eea4e6687e4572191216ad4c6 refs/remotes/origin/develop
c438c439c66da3f2356d2449505c073549b221c1 refs/remotes/origin/feature/datts_right
c889b37a5ee690986935c9c74b71999e2cf3c6d7 refs/remotes/origin/master
23768aa5425cbf29d10ff24274adad42d90d15cc refs/stash
e572cf91e95da03f04a5e51820f58a7306ce01de refs/tags/menu_shows_published_only
429ebaa895d9d41d835a34da72676caa75902e3d refs/tags/slow_dev
.git
目录的更新 ( user_controlled_site_layouts
在refs/heads/feature folder
):
$ ls .git/refs/heads/feature/
datts_right user_controlled_menu user_controlled_site_layouts
$ cat .git/refs/heads/feature/user_controlled_site_layouts
3af84fcf1508c44013844dcd0998a14e61455034
git show 3af84fcf1508c44013844dcd0998a14e61455034
更新
$ git show 3af84fcf1508c44013844dcd0998a14e61455034
commit 3af84fcf1508c44013844dcd0998a14e61455034
Author: Ramon Tayag <xxx@xxxxx.xxx>
Date: Thu May 12 19:00:03 2011 +0800
Removed site layouts migration
diff --git a/db/schema.rb b/db/schema.rb
index 1218fc8..2040b9f 100755
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -10,7 +10,7 @@
#
# It's strongly recommended to check this file into your version control system.
-ActiveRecord::Schema.define(:version => 20110511012647) do
+ActiveRecord::Schema.define(:version => 20110503040056) do
create_table "attachments", :force => true do |t|
t.string "name"
@@ -205,15 +205,6 @@ ActiveRecord::Schema.define(:version => 20110511012647) do
t.integer "old_id"
end
- create_table "site_layouts", :force => true do |t|
- t.string "name"
- t.text "description"
- t.text "content"
- t.integer "site_id"
- t.datetime "created_at"
- t.datetime "updated_at"
- end
-
create_table "site_styles", :force => true do |t|
t.text "published"
t.datetime "created_at"
#1楼
我在git-bash上遇到相同的pathspec error
。 我在Windows上使用Tortoise git来切换/签出分支。
#2楼
我遇到了同样的问题..当我尝试执行以下操作时,我以为自己有一个名为foo
分支:
git checkout foo
我得到:
error: pathspec 'foo' did not match any file(s) known to git.
然后,我尝试使用完整的分支名称:
git checkout feature/foo
然后为我工作。
#3楼
如果您使用git branch -D yourbranchname
删除了一个分支,并再次拉/克隆了您的git branch -D yourbranchname
,则可能需要再次创建本地分支。
尝试:
git checkout -b yourbranchname
#4楼
Git Windows用户要注意-如果没有--icase-pathspecs
或GIT_ICASE_PATHSPECS = 1
env var设置 ,则git pathspecs区分大小写,在这种情况下
git checkout origin/FooBranch "Some/Path/To/File.txt"
与...不同
git checkout origin/FooBranch "some/path/to/file.Txt"
#5楼
这可能是上游重写历史记录时引起的。
发生这种情况时,我将所有受影响的存储库扔掉,从上游克隆它们,然后使用'git format-patch'/'git am'将所有正在进行的工作从旧世界迁移到新世界。
来源:oschina
链接:https://my.oschina.net/u/3797416/blog/3151098