1

今日、マスター HEAD を Google コード svn リポジトリに "dcommit" するときに、奇妙な問題が発生しました。私がしたことの抜粋の下。私は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(-)

変更は現在マスターにあります

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 トランクは変更されておらず、私の最新のチェックイン (プレゼンテーションからのマージ) はステージングされていません:

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 ログから削除されます。何が起こっている?

4

1 に答える 1

2

dcommitSubversionにはgit(および他のdvcs:親トラッキング)と同じマージの概念がないため、「git-merges」はできません。svn:merge-info最近のバージョンはプロパティでそれをエミュレートしようとしますが、同じではありません。

dcommitdevブランチをsubversionに変更したい場合は、最初にマスターにリベースする必要があります。

git rebase master dev

その後、あなたはできるはずですdcommit

于 2011-08-24T13:43:49.693 に答える