我知道可以設置覆蓋用戶級配置的per-repo配置(即/path/to/my/repo/.gitconfig
覆蓋~/.gitconfig
)。是否可以設置覆蓋給定文件夾的所有子文件夾的用戶級別設置的git配置?即,我有設置所有子文件夾的git config值
|--topLevelFolder1
|--\
| ---.gitconfig_override
|--\
| ---childFolder1
| \---[...]
|--\
| ---childFolder2
| \---[...]
而且我想在.gitconfig_override
定義的設置在childFolder1
和childFolder2
適用。
我對此的動機如下:我有一臺工作筆記本電腦,我也在空餘時間用於個人項目。我所有的工作代碼嵌套在一個文件夾中。當我推動git repos工作時,我需要使用我的工作角色 - 工作登錄名稱而不是名稱,以及工作電子郵件。當我推送自己的個人(github)回購協議時,我想用我的真實姓名和個人電子郵件來完成。我想過的
其他可能的解決方案(和問題):
- 創建「工作」的獨立用戶和「玩」,適當地設置他們的用戶級別設置,並登錄爲相應的用戶當我切換上下文(麻煩,加上我可以輕鬆忘記切換)
- 創建一個腳本,在「workFolder」內搜索git repos,並添加/更新其.gitconfig文件以保存適當的細節(如果我創建了一個repo並忘記在推之前運行腳本,我會推錯爲錯)
- 「hack」git這樣每次它cr它會檢查文件路徑,並在適當的情況下更新.gitconfig文件(複雜,凌亂,幾乎可以肯定是錯誤的做法 - 另外,我不會有第一條線索如何去做)!
我檢查了this question,它似乎只包含單個回購的解決方案,而不是多個。希望有人會看到這個問題誰錯過了那個!
你會在同一個倉庫裏工作都「工作,你」和「個人你「?如果不是,你鏈接的問題包含我給的答案。您的'--global'用戶設置應該包含您使用的更多身份。應該使用其他身份的每個存儲庫都應該具有相應的'user.name'和'user.email'。 – Chris
我永遠不會與兩個不同的用戶一起工作 - 每個回購將是「工作」或「回家」 - 但問題來自於(對於工作,至少)我有類似於35回購的事實,並且定期增加。我可以在每個現有的回購站中添加'user.name'和'user.email'設置,並設置一個cron腳本將它們添加到任何新添加的回購站中,但如果可以將它們設置爲一個「過濾」到子文件夾中的任何回收站的地方。 – scubbo