簡體   English   中英

單個開發人員的Github工作流程

[英]Github workflow for single developer

我想對我的git工作流程提供一些反饋,因為這是我第一次使用它,盡管閱讀了各種文章和Stack Overflow問題,但我不確定我的流程是否正確。 這是我當前的工作流程(請注意,我正在使用Github for Windows應用程序進行所有git交互):

  1. 確定我將要實現的下一個功能。
  2. 創建一個具有適當描述性名稱的分支。 我通過單擊Github for Windows中的分支按鈕並鍵入新名稱來完成此操作。
  3. 寫一些代碼。
  4. 將這些更改提交給我的新分支。
  5. 寫一些代碼。
  6. 將這些更改提交給我的新分支。
  7. 我已經完成了該功能的實現,因此我想將我的更改合並回主分支。 所以我點擊分支標題下面的“管理”按鈕。
  8. 將新分支合並到主分支中。
  9. 刪除新分支。

我對這個過程非常滿意,直到第7步,我有點困惑。 我認為我的困惑在於我正在嘗試使用Github for Windows應用程序而不是使用命令行。 該應用程序確實使事情變得更容易,但我對我提到的一些命令/指令與您在應用程序中將采取的操作之間的理解存在一些脫節。

讓我問一些具體問題:

  1. 我的工作流程是否正確? 如果沒有,它有什么問題,我該如何改進呢?
  2. 我應該將我的更改“發布”到新分支嗎? 我的理解是,這相當於在命令行執行git push 真的嗎? 如果是這樣的話,我想我只想在完成功能實現或處於體面狀態時才這樣做?
  3. 我是否應該在將其合並到主分支中時刪除分支,還是應該永久保留?
  4. 完成合並后是否需要發布主分支?這是隱含的嗎?
  5. 我有時無法執行合並並收到此錯誤消息:

    無法合並

    無法將'test'合並到'master'中。 您可能需要打開shell並調試此repo的狀態。

當之前發生這種情況時,我能夠更改為主分支並將新分支合並到主分支中,但不再有效。 無論我在哪個分支,我都無法合並這兩個分支。 兩者都是同步的,我已經發布了測試分支的所有更改。 我應該在shell中輸入什么來找出為什么我不能合並分支?

作為參考,這些是促使我的過程的主要鏈接:

  1. Scott Chacon關於Gitub的工作流程
  2. Git本地存儲庫上的單個開發人員的工作流程
  3. 單個用戶的Git工作流程

您所描述的內容聽起來像是一個常見的分支工作流程,即使對於同一代碼庫上的多個開發人員也能很好地工作。 它完全由git flow覆蓋,它是git命令行的擴展,用於自動執行某些步驟。 值得一試。

我不是git UI工具的忠實粉絲。 我大部分時間都在使用命令行。 所以我對GitHub for Windows沒有經驗。 但我打賭你的問題會因為你的合並而不再是快進而發生。 這將需要手動合並步驟(afaik)未被工具覆蓋。

在將它們合並到您的上游后,沒有充分的理由保持分支。 但一個是跟蹤提交進入某個功能的內容。 如果您決定保留它們,我建議發布分支機構。 您不依賴於本地計算機上的代碼。 保持分支不會使你的存儲庫變得更大,但會污染視線。 大多數情況下,提交在您的上游分支中都存在。

合並后,您必須發布(推送)主分支。

為了熟悉git命令行工具,我建議從GitHub的Git和GitHub簡介開始,並按照他們的鏈接參考了解更多細節。

希望有所幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM