2015-04-23 94 views
0

我是GIT新手,在尝试执行合并时发现我的某些提交丢失了。我得到了下面的发现git merge缺少几次提交

第一条命令丢失了一些分支“ACCOUNT_RECORD_TO_DB”的提交。而第二个命令显示提交的完整历史记录。有人能告诉我“ACCOUNT_RECORD_TO_DB”和“origin/ACCOUNT_RECORD_TO_DB”之间的区别吗?

在此先感谢

git log ACCOUNT_RECORD_TO_DB --pretty=oneline 

git log origin/ACCOUNT_RECORD_TO_DB --pretty=oneline 

回答

2

产地是远程分支的指针,在混帐如果您共享团队中的分支,比你必须把它放在那里的一些远程。

所以原产地/ ACCOUNT_RECORD_TO_DB是您的远程分支,而ACCOUNT_RECORD_TO_DB是您的本地分支。

如果你运行:git merge ACCOUNT_RECORD_TO_DB some_other_branch。它只会更新本地分支而不是远程指针。

git的日志产地/ ACCOUNT_RECORD_TO_DB --pretty = ONELINE 这将显示,去年在面临本地远程分支机构的日志,合并将不会更新。

git log ACCOUNT_RECORD_TO_DB --pretty = oneline 这将显示合并后本地分支的日志。

+0

说,我ACCOUNT_RECORD_TO_DB分公司从提交C1 混帐合并ACCOUNT_RECORD_TO_DB –

0

上讲,ACCOUNT_RECORD_TO_DB分支从提交C1

C1分支出来 - > C2 - > C3 - > C4 < ==主
|
B1 - > B2 - > B3 < == ACCOUNT_RECORD_TO_DB

现在我理解低于命令只合并的变化从B1至C4

git checkout master 
git merge ACCOUNT_RECORD_TO_DB 

为了在变化合并来自B3至C4,以下命令应该用来代替。

git merge origin/ACCOUNT_RECORD_TO_DB 

对吗?

+0

http://stackoverflow.com/questions/16666089/whats-the-difference-between-git-merge-and-git-rebase一发不可收拾 –