簡體   English   中英

如何忽略Git合並中的文件?

[英]How to ignore files in Git merge?

我正在一個(Django)網站上工作,有兩個分支: masterdev

master是生產版本,不應該直接在這里完成任何工作。 所有的變化應該來自合並dev分支,一旦被認為是穩定的。

正如您可能猜到的那樣, dev是開發分支,所有更改都在這里(和子分支)進行。

在服務器中我有兩個網站正在工作,生產一個(使用master分支)和另一個私有開發,使用dev子域使用dev分支。

問題是所有配置文件,靜態文件(圖像等)都在控件版本內,以便能夠輕松地將它們推送到服務器。 但是,如果這些文件(靜態,配置...)在dev被修改為只在服務器中調試然后我需要與master合並... 我怎樣才能設置一些文件和dirs在合並開發時被忽略成為高手?

我一直在搜索,我發現了一些相關的問題 ,但是他們告訴你使用.gitattributesmerge=ours 但是,這種方法有一個很大的警告:只有在兩個分支中修改文件時才應用策略,但這不是我的情況。

關於我該怎么做的任何提示?

git checkout master

git merge --no-log --no-ff --no-commit dev

git checkout master &ltfiles-you-don't-want-to-merge>


git add &ltfiles-you-don't-want-to-merge>

git commit -a

~~~ Test / Build ~~~

git push origin master

說實話,git聽起來像是解決這個問題的錯誤地方。

Django提供了針對生產和開發環境進行單獨設置/配置的工具。 我建議你看一下這篇文章: Django:如何管理開發和生產設置?

如果你按照上面的帖子中的建議,你可以為你的開發環境搞砸配置等,然后合並到master將是無害的,因為生產將有自己的配置。

已經很久了。 但我正在尋找同樣的解決方案。 無處不在,它只是突然出現:使用子模塊進行配置。 使用子模塊,您可以為不同的配置設置多個分支。

使用符號鏈接鏈接子模塊中的文件(在子目錄中)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM