SVN-как зафиксировать несколько файлов за один снимок

Я попытался зафиксировать несколько файлов в разных каталогах одним выстрелом, как показано ниже,

svn commit –m”log msg” mydir/dir1/file1.c mydir/dir2/myfile1.h mydir/dir3/myfile3.c etc etc

Так как я хотел исключить некоторые файлы из списка фиксации, поэтому я разместил каждое имя файла в командной строке, как указано выше. Я положил его в блокнот, и он пришел около 25 файлов. Когда я копирую и вставляю его в командную строку, последние несколько файлов отсутствуют, и я думаю, что это может быть ограничение буфера командной строки (?). Есть ли возможность увеличить буфер длина?

есть ли какой-либо вариант, я могу поместить все файлы в текстовый файл и дать его в качестве аргумента svn commit?

4 ответов


можно использовать список изменений svn отслеживать набор файлов, которые вы хотите совершить вместе.

связанная страница содержит множество деталей, но вот пример резюме:

$ svn changelist my-changelist mydir/dir1/file1.c mydir/dir2/myfile1.h
$ svn changelist my-changelist mydir/dir3/myfile3.c etc.
... (add all the files you want to commit together at your own rate)
$ svn commit -m"log msg" --changelist my-changelist

можно использовать --targets ARG опция, где ARG-это имя текстового файла, содержащего цели для фиксации.

svn ci --targets myfiles.txt -m "another commit"

У меня не было проблем с фиксацией нескольких файлов, таких как:

svn commit fileDir1/ fileDir2/ -m "updated!"

используйте набор изменений. Вы можете добавить столько файлов, сколько хотите, в набор изменений, все сразу или по нескольким командам; а затем зафиксировать их все за один раз.