2013-03-08 95 views
1

我不知道這是否有意義或不...是否有可能只跟蹤一個git分支中的文件夾?

我有一個主要的私人git存儲庫,我所有的編碼。我設置了另一個公共git,只發布公開結果(我的一些原始數據是敏感信息)。我將所有結果準備在私人git中的一個文件夾中。

那麼,是否有可能使公共git的分支(github-pages)跟蹤我的私人git的結果文件夾?

或者你們都有更好的工作流程嗎?

感謝,

回答

0

因爲它是一個分支,我會建議簡單地刪除一切,但該文件夾從分支和提交。由於看起來您只希望在該分支中使用該功能,因此這不會影響您的工作流程。

1

是的,這是可能的

你可以做這樣的事情:

1)臨時移動私有文件夾到另一個地方

2)創建一個新的回購協議(你應該這樣做,以刪除舊的提交,可以在公共分支暴露隱私文件的任何日誌),幷包括在主分支唯一的公共文件(現在)

git init 
    git add . 
    git commit -m 'adding public files to repo' 

2 )創建並簽了一個名爲public_stable

git checkout -b public_stable 

3個新的分支)創建與線的.gitignore文件「/你的 - 私人文件夾名稱/。」在public_stable分支,從自己的公開分支

例如排除這些文件,在Linux中......

touch .gitignore && echo '/your-private-folder/*' >> .gitignore 

下一個...

git add .gitignore 
    git commit -m 'this branch will ignore files located on private folder' 

4)返回到主並創建一個新的分支private_stable從主

git checkout master 
    git checkout -b private_stable 

4)現在您可以將私人文件夾移回到您的項目

git add /your-private-folder-name/. 
    git commit -m 'added private files' 

5)在此之後,您將有兩個主要分支上下工夫:public_stable和private_stable

6)要在你的私人文件的工作,你應該從private_stable跳轉到創建正在進行獨立工作穩定的工作。

from private_stable ...

git checkout -b private_issue 

,一旦你在private_issue可以合併變化做private_stable

而你可以採用同樣的工作流程public_ *分支

這樣,你可以從私人內容隔離公開。

Master將擁有所有文件,但您應該避免將位於public_ *分支中的.gitignore合併到master或private_分支。

相關問題