1

今天我在将我的主 HEAD 提交到谷歌代码 svn 存储库时遇到了一个奇怪的问题。下面是我所做的摘录。我几乎要说我确实有 uuid 冲突,但我认为这不太可能。我对 git 越来越有经验,但有时我仍然感到困惑......

我的演示文稿分支中的一些更改...

jerry [~/dev/myproject]$git checkout master
Switched to branch 'master'
jerry [~/dev/myproject]$git merge presentation
Updating c5e5816..f5a376c
Fast-forward
 js/iPath.js        |    5 +----
 presentation/paper.html |    6 ++++--
 2 files changed, 5 insertions(+), 6 deletions(-)

更改现在在 master 中

jerry [~/dev/myproject]$git status
# On branch master
# Untracked files:
#   presentation/.#paper.html
nothing added to commit but untracked files present (use "git add" to track)

现在我致力于 svn。

jerry [~/dev/myproject]$git svn fetch
jerry [~/dev/myproject]$git svn dcommit
Committing to https://myproject.googlecode.com/svn/trunk ...
No changes
8e67cdc7e8bad816e402c1b9c72b5e84c492e907~1 == 8e67cdc7e8bad816e402c1b9c72b5e84c492e907
No changes between current HEAD and refs/remotes/trunk
Resetting to the latest refs/remotes/trunk
Unstaged changes after reset:
M   js/iPath.js
M   presentation/paper.html
Unable to extract revision information  from commit f5a376ca4a10a4807abbbea131b94b828ee88269~1

svn trunk 未修改,我最新的签入(从演示文稿合并)未暂存:

jerry [~/dev/project]$git status
# On branch master
# Changed but not updated:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#   modified:   js/iPath.js
#   modified:   presentation/paper.html
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   presentation/.#paper.html

最后一次提交也会从 git log 中删除。到底是怎么回事?

4

1 回答 1

2

你不能dcommit“git-merges”,因为颠覆没有与 git(和任何其他 dvcs:父跟踪)相同的合并概念。最近的版本试图用svn:merge-info属性来模拟它,但它不一样。

如果你想将dcommit你的 dev 分支更改为 subversion,你必须首先在 master 上重新设置它们:

git rebase master dev

那么你应该可以dcommit

于 2011-08-24T13:43:49.693 回答