我知道Hg的忽略是有用的,但有沒有一種方法可以指定我關心的文件,而忽略其餘的, 例如。有沒有辦法選擇我想要的內容,而不是忽略我不想要的內容
如果我在回購中有a.c, a.h, a.o, a.exe, a.err
,有沒有一種方法可以告訴Hg,我只想保留*.c *.h
,並且忽略列表中的所有內容。
我知道Hg的忽略是有用的,但有沒有一種方法可以指定我關心的文件,而忽略其餘的, 例如。有沒有辦法選擇我想要的內容,而不是忽略我不想要的內容
如果我在回購中有a.c, a.h, a.o, a.exe, a.err
,有沒有一種方法可以告訴Hg,我只想保留*.c *.h
,並且忽略列表中的所有內容。
嘿,@ vonC是對的,我不能讓這個過去。沒有辦法將hgignore變成白名單而不是黑名單。我通過設計收集它(我當然沒有設計它)。
您有幾種選擇:
添加一切(.*
)到您的.hgignore
,然後你想跟蹤hg add
文件 - 添加始終覆蓋忽略
就壞了並創建一個合適的黑名單:hg status --no-status --unknown >> .hgignore
是一個很好的起點。
底線是意外跟蹤你不想跟蹤的事情,而不是意外地忘記跟蹤你希望跟蹤的事情。前者會在您的回購中產生一點噪音,而後者會導致潛在的數據丟失。
如果你真的想獲得看上你可以添加「.*
」你.hgignore
,然後創建一個這樣的鉤子:
[hooks]
precommit.add = hg add $(hg status --unknown --no-status -I '**.c' -I '**.h')
這將自動添加任何新的.c和當您提交.h文件。
似乎與白名單相似,就像在http://stackoverflow.com/questions/1512058/hgignore-help-ignoring-all-files-but-certain-ones但Ry4an不會很高興:http:///stackoverflow.com/a/10434978/6309 – VonC