亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我可以‘git’提交一個文件并忽略它的內容更改嗎?

我可以‘git’提交一個文件并忽略它的內容更改嗎?

Git
躍然一笑 2019-07-04 12:30:25
我可以‘git’提交一個文件并忽略它的內容更改嗎?我團隊中的每個開發人員都有自己的本地配置。配置信息存儲在一個名為devtargets.rb在我們的RAKE構建任務中使用。不過,我不希望開發人員破壞對方的devTarget文件。我的第一個想法是把那個文件放到.gitignore列表,使其不承諾于git。然后我開始思考:是否可以提交文件,但忽略對文件的更改?因此,我會提交該文件的默認版本,然后當開發人員在他們的本地機器上更改它時,git將忽略這些更改,并且當您執行git狀態或git提交時,它不會出現在已更改的文件列表中。這有可能嗎?這將是一個很好的特征.。
查看完整描述

3 回答

?
HUH函數

TA貢獻1836條經驗 獲得超4個贊

這樣做的首選方法是使用git update-index --skip-worktree <file>,如所解釋在這個答案中:

assume-unchanged是為檢查一組文件是否已被修改而設計的;當您設置位時,git(當然)假定與索引的該部分對應的文件沒有在工作副本中被修改。因此,它避免了一個混亂的STAT調用。每當索引中的文件條目發生變化時(因此,當文件在上游更改時),此位就會丟失。

skip-worktree不僅如此:即使git知道文件已經被修改(或者需要重新設置-硬的或類似的),它也會假裝沒有修改,而是使用索引中的版本。這種情況一直持續到索引被丟棄為止。

若要撤消此操作,請使用git update-index --no-skip-worktree <file>


查看完整回答
反對 回復 2019-07-04
?
阿波羅的戰車

TA貢獻1862條經驗 獲得超6個贊

常見的做法似乎是創建一個devtargets.default.rb,然后指示每個用戶將該文件復制到devtargets.rb(在.gitignore列表中)。例如,CakePHP對其數據庫配置文件做同樣的操作,該配置文件在不同的機器之間自然發生變化。


查看完整回答
反對 回復 2019-07-04
  • 3 回答
  • 0 關注
  • 1399 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號