2016-11-14 35 views
0

我在一個非常小的公司,當我開始時,他們並沒有真正的源代碼控制或跟蹤問題,所以我建立了並使用git。我是目前唯一的軟件開發人員,不幸的是必須自己做測試。Git合併和測試

我對git很新,希望有人能告訴我如何正確使用git進行QA測試,並將其合併到master中。我不確定何時應該將我的新功能提交給主人。目前,我的過程是,從主

  1. 分公司(最新發布)
  2. 加入我的新功能
  3. 臺架試驗只是新功能
  4. 一旦功能工作正常,做一個完整的測試包括新功能在內的所有軟件
  5. 一旦測試成功,在功能分支中,我更新版本號並向歷史記錄添加一條小評論,說明它已經過全面測試。
  6. 作爲軟件更新合併回主機併發布。

這是做到這一點的正確方法。當我沒有在技術上對主設備進行測試但功能分支時,我感覺有點不舒服。我可能正在瘋狂,但正如我所說,我有點新的git,只是有點不確定最好的方式來做到這一點。

回答

1

我只是覺得有點不舒服,當我沒有在技術上對主人進行測試時,發佈主人,但功能分支。

是沒有問題的,如果您的合併掌握情況作爲快進合併。在這種情況下,合併前後的代碼是相同的。即使您使用git merge --no-ff並且目標分支(master)中沒有更改,合併也不會觸及代碼。 (但是,如果你做了真正的合併,你應該測試合併的代碼。)

你需要測試何時代碼改變,而不是Git引用。因此,如果git diff <tested-ref>輸出任何行,請再次測試代碼。如果輸出爲空,則除非存在任何重要的未受版本控制的文件,否則沒有任何功能會被破壞。

有關合並的更多信息,請參閱https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging

+0

嗨Melebius,謝謝你的評論和鏈接。我是唯一一個處理代碼的人,所以在將我的專長合併回來之前,主人不會有任何變化。所以它會以ff commit的方式發生。唯一的問題是我合併時使用了--no-ff選項。我更喜歡我的主人包含每個功能的完整提交歷史記錄。我更喜歡這種方式,不僅因爲它讀得更好,而且如果需要,我可以刪除大合併提交的單獨部分。儘管它會以ff commit的方式完成,但技術上不行,您是否仍然會推薦我測試合併的分支。 – user1649972