我是SVN的新手。 SVN-add在這裏是爲了「準備一個文件集成到SVN中」,對吧?但是如果我希望它能夠有效地集成到版本控制中,我必須提交它(在我執行SVN提交時勾選)。那麼,爲什麼我會撤消 - 添加(如果在我提交後驗證文件集成之前添加沒有任何後果)?SVN-add和undo-add,用於什麼?
另外,你能指出我使用SVN的一些很好的參考嗎?
感謝和問候。
我是SVN的新手。 SVN-add在這裏是爲了「準備一個文件集成到SVN中」,對吧?但是如果我希望它能夠有效地集成到版本控制中,我必須提交它(在我執行SVN提交時勾選)。那麼,爲什麼我會撤消 - 添加(如果在我提交後驗證文件集成之前添加沒有任何後果)?SVN-add和undo-add,用於什麼?
另外,你能指出我使用SVN的一些很好的參考嗎?
感謝和問候。
您已經添加了一個文件,然後決定你犯了一個錯誤,你真的不希望將其添加到SVN。因此,在提交之前撤銷添加(即恢復工作副本中的更改)。
您在SVN中進行的每個操作都是在本地進行的,在您的工作區中。
如果您不想提交新添加的文件,則應該「取消」此添加,以獲得乾淨的工作空間。這是「撤消添加」的目標。
這裏是關於SVN一個很好的演講:http://svnbook.red-bean.com/
那麼,爲什麼我撤消加(如果附加有沒有影響我驗證之前 文件整合後提交)?
的確,如果您永遠不會提交該文件,您將永遠無法將其添加到SVN存儲庫中。但不要想着'準備整合',而是想'把文件放在版本控制之下'。這意味着如果您在文件夾級別而不是文件級別執行SVN操作,則可以確保只有您刻意要更新的文件纔會被觸及。
如果你做了svn up docs/,並且你的本地文件夾包含一個與存儲庫中的文件名相同的文件,svn會報錯。如果你的本地文件處於版本控制之下,它可能會將這兩者合併在一起,而不會發現。
同樣,如果你想整個文件夾提交到庫,你可以高興的是,沒有明確標記爲包含(如.LCK或的.ds店)的任何文件不會被被COMMITED錯誤 - 最多造成不必要的混亂&最糟糕的情況是導致團隊中的開發人員之間發生衝突。
在這種情況下,如果不使用'undo-add',則意味着任何在較高目錄級別的svn提交都會將該文件添加到存儲庫。你忘了做的「svn添加」也許不久之後開始與:)
我用的是未來的svn命令和文件/ s的名稱結尾:
svn del --keep-local
你在哪裏「嘀盒子「,你正在使用一些GUI前端?參考文獻是SVN書籍:http://svnbook.red-bean.com/ – jpe