eric 說:
svn,一次提交多個檔案,有乙個檔案本地已經old了,結果所有的提交都失敗。
rock 說:
恩,是啊。
eric 說:
為什麼不把沒問題的成功了呢?
rock 說:
可能是為了獲得「原子性」行為吧。
對於一次commit,要麼成功,要麼失敗,不存在「60分」的commit。
eric 說:
這裡有原子性的需要麼?我想想。
不是60分,而是60%。
乙個目錄下上百個檔案裡,幾十個有改動的檔案(紅色感嘆號)裡我要挑選十幾個提交。
結果一失敗,全部重新挑選。
挑選一次,半分鐘以上。
而且,極容易出錯。
rock 說:
也是。可以每次少提交幾個,先把好的提交上去。
eric 說:
問題是我改之前update過一次,
改好後我不知道哪些別人沒commit過,哪些有。
rock 說:
恩。別人commit過的就會失敗。
eric 說:
svn已經做不到相關的改動一次提交了,檔案位於不同目錄下,我是不知道怎麼一次提交,以前問過你,你說也是幾次的。
他保證不了任一次提交,伺服器上的都是可以編譯通過的。
那幹嘛要原子性啊。
rock 說:
我想可能是因為所謂「commit失敗」不一定是因為某個檔案版本衝突造成的,可能還會有別的原因導致commit在中途失敗,它給統一考慮了。
eric 說:
還會有什麼情況。
rock 說:
比如網路異常。
eric 說:
這不影響已經提交成功的就讓他成功吧。
rock 說:
恩,也是。
不知道它這裡的原子性是出於什麼考慮。照理說成功一半也不算什麼嚴重問題。
只要狀態一致就ok。
SVN 檢出部分檔案
svn checkout url depth empty files immediates infinity depth的引數 empty 只包含目標檔案或目錄,不包含子目錄 files 只包含目標檔案和子檔案 immediates 只包含目標檔案及相鄰的檔案,目錄 infinity 所有檔案,目錄...
svn提交檔案時,過濾檔案
用 svn 管理 的時候,在根目錄下提交程式的時候總是會把編譯的class檔案顯示出來,要不就得去你修改過的資料夾下挨個提交很麻煩。都沒想到過 svn 可以過濾這些class檔案的。操作如下 在專案的根目錄下,右鍵找到 svn 的 settings 有乙個global ignore pattern ...
上傳github時隱藏部分檔案的方法
有時一些中間資料檔案或者配置檔案不需要上傳到github,這時就需要想辦法隱藏掉這些檔案 首先在在工程目錄下建立.gitignore檔案 比如講.vscode資料夾隱藏掉 就在.gitignore檔案中加入一行 vscode 其他資料夾類似 如果要隱藏具體的某個檔案,只需將具體檔名寫入.gitign...