說有遺留的Java項目A.無論出於何種原因,該項目都有一些保密的內容(例如密碼,加密密鑰,電子郵件)和/或環境特定(例如硬編碼路徑,服務器名稱,電子郵件)。由於涉及的複雜性,似乎不可能將項目更改爲不包含源代碼中的信息。同一項目的多個不同變體的Git流程
在某個時候,一個新的外包團隊加入了這個開發。鑑於上述情況,外包團隊無法逐字訪問項目來源。他們有一個獨立的開發環境,因此可以在他們的VCS中製作一個單獨的項目副本,以解決問題(即所需的所有內容都根據需要進行清理/更新,以便在其環境中工作)。我們稱之爲A2版本。
的工作流程一般包括涉及A和A2兩件事情:
- 的代碼可以在雙方發生變化(即A和A2可以改變,由最初的團隊和A2改變由外包團隊),包括有源代碼更改衝突
- 需要保持兩個項目同步。不需要讓它們始終保持同步,但重要的是要有一種相對無痛的方式來做到這一點。假設有衝突需要解決時,這必須是手動過程
這個工作流可以通過手動保存兩個項目並在它們之間合併來實現。
相關的問題:
- 一個會如何使用Git管理兩個版本,即有什麼選擇比手動合併?
- 這是最好的設置還是有更好的選擇?
- 對於新項目,首選方法是什麼(從某種意義上說 - 如果您有類似的情況,您會採取什麼措施?)保持機密/特定環境的事情不受源代碼控制?無論如何,這是一件好事嗎?