在我的辦公室我們遷移到Git的,而且目前我使用Git,SVN做以下工作流程:混帳拉錯誤優先考慮老款
git svn rebase
git checkout -B FEATURE_NUMBER
做的工作,而本地犯
git checkout master
git svn rebase
git merge --squash FEATURE_NUMBER
解決任何衝突,運行測試等
git commit -a -m "Actual Commit Message for everyone else"
git svn dcommit
這工作正常,但我也辦事處之間進行傳播,使用不同的電腦,所以我一直在使用的私人GitHub庫圍繞把我的樹枝,如果我還沒說完。
造成這種情況的工作流程是:
git svn rebase
git checkout -B FEATURE_NUMBER
做的工作,而犯本地
現在我想移動辦公室
混帳推起源FEATURE_NUMBER
去新的辦公室
git svn rebase
git checkout -B FEATURE_NUMBER
git pull origin FEATURE_NUMBER
但是,問題在於發生了一堆衝突。這似乎認爲,在Github上,我徹底解開了自從我在總部重新啓動以來我的團隊所做的所有改變。基本上,它將舊的提交優先於GitHub(即從rebase之前)提交給SVN服務器的新提交。
有一些方法我可以把它很好地融合?
混帳SVN變基失敗,「無法確定從工作樹歷史上遊SVN信息」。我在重新綁定之後嘗試了git merge master,但是它將3個方法與基礎合併爲一個空白文件,所以它認爲整個文件被更改,並且它的全部衝突。 使用中的抓取/支的方法,我可以去掌握,做一個合併--squash,然後用無法比擬的改變哪個文件是將其合併ok了基礎,但還是希望它是自動 – RodH257
別的分支我試過,它說,一旦我做了git svn rebase – RodH257
,我就不明白爲什麼'git svn rebase'會失敗;當我仍然使用git-svn時,你可以從任何分支重新綁定。在另一個分支上,你確定衝突不是真實的,即有人沒有做出你想要改變的同樣的改變?也許你的git-svn安裝被破壞了,使得它無法正確地確定非svn提交的開始位置。 – user4815162342