3

在我的项目中,有 25 个修改过的文件。我需要将其中的 24 个文件提交到 SVN 存储库。我不想提交的单个文件尚未完成,因此我将在以后提交。

我在 Linux 服务器上使用远程 shell 来执行 SVN 提交。我知道如何执行上述操作的唯一方法是输入:

# svn ci file1 file2 file3 file4........... file24

这有点荒谬和低效。有没有更简单的替代方法?我可以提交所有内容但选择省略某些文件吗?

是否需要一些花哨的 bash 脚本?

4

3 回答 3

2

If you need it in a single transaction try something like this:

svn commit `svn status | sed -n -e '/file_you_dont_want/!s/^.......//p'`
于 2012-04-05T16:22:30.987 回答
0

是的。您可以编写一个 bash 脚本来提交某个目录中的所有文件,除了那些您将它作为参数传递的文件。脚本的核心是一个循环:

for x in `ls`
do
     svn ci $x
done

您可以选择通过 grep 传递 ls 的输出来组合过滤器,也可以在循环中放置 if 语句。我可能会去第一个。

于 2012-04-05T16:11:32.933 回答
0

您可以使用更改列表:

svn cl _listName_ -R *
svn --remove 意外文件名
svn commit --cl _listName_
于 2015-05-04T12:06:03.077 回答