我正在使用git-svn;我通常创建一个主题分支,对其进行提交,然后签出master,git svn rebase,git merge --squash topic_branch,git commit -m“summary comment”,然后git svn dcommit。为什么不知道我合并?有没有办法告诉它?
工作正常,但git似乎并不知道我将分支更改合并到主。我想这一点没有参与的svn:
# Make a repository, add a couple files
$ mkdir gittest
$ cd gittest
$ git init
$ touch foo bar
$ git add .
$ git commit -m "initial version"
# Make a branch, change a file, commit.
$ git checkout -b a_branch
$ vi foo # make a change
$ git commit -am "a change"
# Merge changes into master
$ git checkout master
$ git merge --squash a_branch
$ git commit -m "merged a_branch"
和gitk --all显示这一点,这将表明这不是一个git-svn的问题:
在我的主要(GIT-SVN )项目,我看到一些变化似乎早已被合并,但我不知道我现在做什么不同,现在我不这样做。 (这是Ubuntu Jaunty上的git 1.6.0.4,如果有问题的话)。
谢谢...我使用的是--squash,因为我知道“git svn dcommit”为主分支上的每个提交创建了一个SVN修订版,而我只需要一个。 你提到过(在你的git merge doc quote中)--squash不会“记录$ GIT_DIR/MERGE_HEAD来导致下一个git提交来创建一个合并提交”..我将更多地关注*做什么*记录MERGE_HEAD - 听起来好像在那里,正确的事情可能会发生。 – 2009-05-23 18:59:02
啊,我忘了你提到git-svn。不幸的是,我将SVN的冷火鸡换成了Git,所以我不能添加任何有用的东西,但是祝你好运! – 2009-05-23 20:39:03