2016-08-09 68 views
0

新來git這裏,我有一個組織問題。Git組織

我有一個名爲MASTER的文件和一個名爲OBJECTIVE的文件。根據MASTER中的特定參數,OBJECTIVE將實現一種算法或另一種算法。我想要保持這兩個版本的輸出在我的git倉庫中處於活動狀態,但我不想根據所使用的算法重命名文件。

在git中有這樣的最佳做法嗎?

+0

我不太確定這是否被認爲是「最佳做法」,但使用單獨的[分支](https://git-scm.com/docs/git-branch)? –

+0

你想讓兩個不同的日誌文件具有相同的名稱....?爲什麼? – matmo

+0

接縫對我來說,你的問題不是如何做某件事,是你不知道Git本身。我強烈建議你通過Git http://rogerdudler.github.io/git-guide/這個簡單的解釋。之後,你應該檢查這個https://guides.github.com/introduction/flow/。 這應該會讓你更好地理解Git本身是如何工作的。 有了這些基礎知識,您可以從https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow跳轉到更詳細的解釋。 –

回答

0

我不認爲git在這裏是正確的做法。你可以做的最多的是第二次執行的第二個分支,但是這將會擾亂你在關閉分支上執行的實現的git歷史。

相反,我建議你完全按照你所說的去做。讓程序接受一個運行時參數,或者以類似於chmod的標誌或者一些environment variable的形式傳入。

根據你在兩個實現之間改變的頻率,我會選擇頻繁切換的標誌方法,其中像生產vs開發的東西我會使用環境變量。

1

這聽起來像你需要

\MASTER 
\OBJECTIVE.algorithm1 
\OBJECTIVE.algorithm2 

,然後一些過程,後兩個文件的副本之一

\OBJECTIVE 

在大多數情況下這樣的,OBJECTIVE不會被提交到存儲庫因爲它是一個生成的文件。