svn 一次性提交整個目錄包括子目錄

svn st|awk '{print $2}'|xargs svn add。

 

乍看之下覺得更加精煉,仔細看下就會發現這個腳本沒有區分文件狀態。所以完善了以下這個腳本:

 

 

 

svn st | awk '{if ( $1 == "?") { print $2}}' | xargs svn add

 

這樣,以後我可能使用這個腳本成百上千次。(當然這個腳本也沒有考慮過濾不要添加的文件)

 

當你第三次做一件事情的時候,就應該考慮將其工具化,自動化!

 

 

 

名稱

svn add — 添加文件、目錄或符號鏈。

 

概要

SVN子命令add PATH...描述

文件、目錄或符號鏈到你的工作拷貝並且預定添加到版本庫。它們會在下次提交上傳並添加到版本庫,如果你在提交之前改變了主意,你可以使用svn revert取消預定。

 

選項--targets FILENAME--non-recursive (-N)--quiet (-q)--config-dir DIR--no-ignore--auto-props--no-auto-props--force

 

例子:

我們通過一個例子來看一下SVN子命令add,添加一個文件到工作拷貝:

$ svn add foo.c 

A         foo.c

當添加一個目錄,svn add缺省的行爲方式是遞歸的:

$ svn add testdir

A         testdir

A         testdir/a

A         testdir/b

A         testdir/c

A         testdir/d

你可以只添加一個目錄而不包括其內容:

$ svn add --non-recursive otherdir

A         otherdir

通常情況下,命令svn add *會忽略所有已經在版本控制之下的目錄,有時候,你會希望添加所有工作拷貝的未版本化文件,包括那些隱藏在深處的文件,可以使用svn add的--force遞歸到版本化的目錄下:

$ svn add * --force

A         foo.c

A         somedir/bar.c

A         otherdir/docs/baz.doc。SVN子命令add的用法介紹講解完畢。

 

svn add *

svn add */**/*
等同於
svn add * --force

 

文章來源:良玉的博客 http://www.uouo123.com/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章