2017-08-01 50 views
3

我正在開發我的電腦上的分支。我做了很多我不想推的改變,但我想保留它們。 我所做的是更改我的項目上的翻譯行爲,並且在推送它並將其部署到生產之前,我想稍微測試一下。 但我想繼續在開發或任何其他分支上工作,並能夠應用這些更改。Git保持一些本地變化乾淨,但不要推它們

還有就是我想出了想法:

  1. 保留所有這些文件(不混帳添加的話),並承諾只將文件其實我是想承諾。但是這個解決方案讓我的「git status」非常混亂(很多修改過的文件),我相信它會產生錯誤並導致提交錯誤的文件。

  2. Git存儲保存「翻譯」並將其應用於我想使用它時。但是我會遇到一個混亂的git狀態,在那裏我不得不選擇我想提交的文件中的哪一個。

  3. 創建就可以了我的新特徵的新的分支,但只要我將其合併到我的工作分支,我將提交合併爲同一時間

你知道任何其他的工作流程保留許多文件的更改列表並應用/刪除這些更改?

回答

0

類似git-flowgitlab-flow很適合。

從我讀過的,我可以得出結論,你的項目包含2個模塊,並且你修改它們兩個。

一個模塊是穩定的,但您仍然修改它,想要更徹底地測試您的修改,另一個模塊是一個正在進行的工作。

我會使用你的第三個變體,但將你的工作分支合併到你的新功能分支。或者,如果您想將您的修改分離到「穩定」模塊,則可以將它們保留在單獨的分支中。

也就是說,你會得到3個分支:

  • 你對「不穩定」模塊的工作,「穩定」模塊沒有你的最新 變化;
  • 您對「穩定」模塊的修改;
  • 兩個以上

分支在混帳合併既便宜又方便,你可以創建分支中的任意量。

0

你可以將你的主要本地分支重定位到一箇中間分支,它是跟蹤遠處分支的分支。然後,您通過櫻桃選擇將您的提交從您的主要本地分支報告給跟蹤分支,然後將您的主要本地分配到更新的跟蹤分支。

0

將本地未完成的工作保留在單獨的分支上並推送它。

  1. 它可以讓你正確地製作提交,而不是在最後做一個巨大的怪物提交。
  2. 它將允許您在服務器上擁有代碼副本,以便在發生磁盤崩潰或類似情況時不會丟失工作。
  3. 在部署到生產之前,它將允許其他人查看您的代碼並對其進行檢查。

部署通常會在單個分支上進行。只要您不將更改合併到該分支中(儘管您需要在您的位置進行驗證),那麼您就很安全。

0

在第三個選項,爲您的功能創建一個新的分支。

您不必直到你準備把它合併到發展 - 合併發展功能相反,只要有你要測試的變化。

  • 工作清潔開發代碼:檢查開發。
  • 要處理新的譯員代碼:簽出功能併合並來自開發的最新更改。
  • 當功能完成時:最後一次合併開發功能(如果它尚未更新),然後檢查開發和合並功能。
相關問題