2011-04-27 16 views
11

我在一個Git倉庫中有一個項目,並且我發送了在Git之外完成的更改。這些更改是基於我對自己進行更改的早期版本。將這些外部文件與我的合併的最佳方式是什麼?將外部更改合併到我的Git倉庫中的最佳方式是什麼?

非常感謝!

+1

這些更改以什麼格式發送給您?一個diff文件? – 2011-04-27 21:27:32

回答

10

最好的方法是告訴git他們基於什麼承諾,爲您提供自動合併的最佳機會。

  1. git checkout <sha1 of the old commit> -b mybranch,倒回你的工作樹,並開始一個新的分支。
  2. 如果更改是作爲差異發送的,請使用git-apply將它們應用於工作樹,否則只需將更新的文件放入。
  3. 添加並提交文件。
  4. git checkout master,然後git merge mybranch
+0

謝謝你,這聽起來像我想要的。乾杯! – GitNub 2011-04-28 02:03:18

4

您將要採取行動完全一樣,如果你使用這些文件的,所以從早期版本的狀態提交他們你正在談論:

  1. 在提交您認爲建立一個新分支要修改的文件的基礎
  2. 添加修改後的文件
  3. 提交
  4. 合併回分支到主要的開發分支
0

最好的辦法是提供更改的人提供補丁而不是文件。但是,如果不可能,那個人不是版本控制感知或其他東西,你可以嘗試在你當前正在處理的分支中提交所有未完成的更改。最好儘量避免任何未跟蹤的文件。然後將這些文件複製到git倉庫中並運行git status,您將看到與您的倉庫狀態相比有哪些變化,然後您可以決定要使用它們做什麼

相關問題