0
我們試圖在一個根目錄下(在子目錄中處理模塊)使用兩個git repos。git排除文件的使用
我們不能使用git子樹,主要是因爲有不同的子目錄中的文件需要放在不同的文件夾中。
我們決定創建2個倉庫,並在.git/info/exclude文件中列出我們想要的一個倉庫忽略的子文件夾,反之亦然。我們試圖使用以下排除了一個只需要幾個文件夾,隨後文件:
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
*
!assets/apps/contratos/*
!api/controllers/contrato/*
!api/models/contrato/*
!api/services/contrato/*
由於它是它基本上結束了跟蹤任何文件,如果我們從文件中刪除*,所有文件都添加再次。
我們希望git忽略所有的文件夾,但上面列出的文件夾。
注意:由於我們的雙重git結構,gitignore不在圖片中 - 無人幫助我們在同一個根目錄下創建兩個.gitignore以獲得2個不同的回購站。
這將是一個爛攤子。相反,有一個存儲庫用於組合使用,並使用'git-subtree'來鏈接兩個獨立的存儲庫。使用構建系統和/或符號鏈接按需組合它們。我建議你問一個關於你的情況以及如何解決它的問題。 – Schwern
@Schwern你是什麼意思與「構建系統」?我們這樣做是爲了通過爲版本/模塊創建自定義代碼來減緩開發速度。它是一個補丁解決方案,我們試圖弄清楚它是否值得這樣做 – galgo
[構建系統](https://en.wikipedia.org/wiki/Build_automation)是您運行編譯或以其他方式編碼的東西準備好運行。它還自動執行其他任務,如測試,部署和樣式檢查。大多數項目最終需要一個。 「make」,「rake」和「ant」就是一些例子。在你的情況下,它會將文件從兩個子庫移動到適當的位置。相反,詢問有關嘗試解決方案的問題,如果您向我們展示了您的設置是什麼促使您嘗試此解決方案,我們可以提供更好的幫助。 – Schwern