2016-01-21 61 views
5

我們通過使用git的visual studio 2015工作。我們擁有中央存儲庫(GitLab)和單個分支「主」。兩個人擁有克隆的存儲庫。Git:合併隱藏某些更改

  1. 第一個人在解決方案中添加了「test-new-file-v.t​​xt」文件。它更改了解決方案文件(.sln)並更改了字符串「VisualStudioVersion = 14.0.23107.0」。然後他在本地存儲庫中提交,然後在中央存儲庫(GitLab)中推送此提交。在那之後,我們已經看過這部提交在中央資料庫(GitLab):在溶液 enter image description here

  2. 二傢伙已經添加「testgit.txt」文件。它也更改了解決方案文件(.sln),但沒有更改字符串VisualStudioVersion。然後他希望在推送之前抽取中央存儲庫(GitLab)。

  3. 第二個人有衝突。他通過Visual Studio 2015合併,看到不同的人在「VisualStudioVersion = 14.0.23107.0」上更改「VisualStudioVersion = 14.0.24720.0」時出錯。第二個人想保持字符串「VisualStudioVersion = 14.0.24720.0」不變。他爲此字符串選擇本地狀態「VisualStudioVersion = 14.0.24720.0」並進行提交合並。之後,他在中央存儲庫(GitLab)中推送這兩個提交。
  4. 之後,我們看過的歷史和變化在中央資料庫(GitLab),並已經看到,承諾從第二傢伙合併: enter image description here

我們看到,在中央資料庫(GitLab)解決方案文件包含字符串「VisualStudioVersion = 14.0.24720.0」,這是正確的,但我們不會看到該字符串替換字符串「VisualStudioVersion = 14.0.23107.0」,因爲來自第一個人的提交包含此字符串並且在合併提交之前。

我的問題:

  1. 它是正確的行爲?我期望在合併提交中看到字符串「VisualStudioVersion = 14.0.23107.0」更改爲「VisualStudioVersion = 14.0.24720.0」。
  2. 我如何實現可以看到所有更改的行爲?

回答

2
  1. 我假設在他提交的主分支,所以他在當地可能沒有將被推向一個變化,他並沒有得到更改。這可以防止代碼在您的分支過期時被還原。

  2. 我建議不要對主人進行更改。創建單獨的本地分支並使用拉入請求到主。

看看使用git分支策略來保持你的分支有序。

Git Branching Model