我正在使用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