我设置了 2 个非裸存储库和一个裸存储库。
在第一个存储库提交给自己然后推送到裸存储库直到这里一切正常之后。
然后在第二个存储库中,我克隆了裸存储库并将内容放入第二个存储库。
然后在第二个仓库中,我添加了一个新文件并提交给自己,但我还没有投入到裸仓库中。
然后我执行 git status 并收到类似“您的分支比 origin/master 提前 1 次提交”这样的消息:所以这是自然行为,因为我还没有推送到裸仓库。
后来我推入裸仓库并 cd 到裸仓库并执行git log,我看到最新的提交是成功的。
然后我返回到第二个 repo 并执行git status,但我仍然收到消息“您的分支比 origin/master 早 1 个提交”。
为什么即使在裸仓库具有最新提交后我仍然收到相同的消息。
**EDIT**:And if I try to pull or fetch the message still remains.
1) user@ubuntu:~/user2$ git pull /home/user/central [/home/user/central-Bare repo]
2) user@ubuntu:~/user2$ git fetch /home/user/central
From /home/user/central
* branch HEAD -> FETCH_HEAD [And this fetch command has no output why does this happen.Am I fetching correctly]
当我对 master 和 origin/master 进行 diff b/w 时,我得到以下信息:
user@ubuntu:~/user2$ git diff master origin/master
diff --git a/anotherfile.txt b/anotherfile.txt
deleted file mode 100644
index 6acd600..0000000
--- a/anotherfile.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-This is a second file to be committed
-hello
我在 user2 repo 中添加了一些文件,user2 的 git log 是 non-bare repo,bare repo 的 git log 是相同的。user2 repo 的 git status 如下所示:
user@ubuntu:~/user2$ git status
# On branch master
# Your branch is ahead of 'origin/master' by 4 commits.
#
nothing to commit (working directory clean)
非裸repo user2中的git branch -vva结果如图所示:
user@ubuntu:~/user2$ git branch -vva
* master dac4ae0 [origin/master: ahead 4] Fifth Commit
remotes/origin/HEAD -> origin/master
remotes/origin/master 8cfb52f Initial Commit