我對git機制有點困惑。保持git合併的一些變化
我的工作有3個分支master
devel
和public
。我使用master
將我的Node.js應用程序部署到OpenShift(或heroku)中; devel
是我開發我的功能的地方,我使用public
將我的開源代碼推到GitHub上。
每次我必須在OpenShift上部署我的應用程序,我只需從devel
合併到master
然後按下即可。 同爲GIT中,我瑪吉從devel
到public
問題是:例子。我有一個文件,index.html
女巫有一小段代碼用於私人Google分析。或者前。我需要部署master
不public
問題是一些文件,但我怎麼能保持的代碼和文件這一片段在master
但不是在public
?
我想過2(非工作)策略:
1)摘錄\文件中不存在的devel
但存在於master
- >我合併devel
在master
- >片斷\文件從被刪除掌握
以這種方式我很好public
(因爲將不包括私人片段\文件),但我不精與master
2)片段\文件都存在於devel
- >如果我合併devel
到master
我很好,我部署在OpenShift上,因爲包含了snippet \ files。
但合併devel
在public
- >現在public
有我的私人文件。
Gitignore文件不能幫助我,因爲分支之間共享,如果我忽略我的私人文件,他們也會在我的master
部署中被忽略。即使如此,這也無法解決片段問題。
TL.TR。我怎樣才能合併2分支保持一些文件\代碼的一部分未合併?可能以一種簡單的方式,因爲我必須爲許多文件做這個。
或者,我如何改變我的分支策略來實現這個目標?
我想我達到了解決方案。在使用git系統時是個錯誤。 'devel'最初有'master'部署中使用的seme code \文件。現在,刪除乾淨的'devel'分支的這些信息,'master'中的mergin也會刪除這些信息。解決方案(非常愚蠢,我知道)重寫了'master'中的文件和有用的片段。直到現在,即使這些信息不再出現在'devel'中,即使從'devel'合併,master也會繼續擁有它們。我是新來的混帳,我有點困惑:)我只是認爲snippets \文件將總是刪除合併! – rEDSAMK