SVN- Как фиксировать несколько файлов за один снимок
Я попытался выполнить несколько файлов в разных каталогах одним выстрелом, как показано ниже,
svn commit –m"log msg" mydir/dir1/file1.c mydir/dir2/myfile1.h mydir/dir3/myfile3.c etc etc
Так как я хотел исключить некоторые файлы из списка фиксации, чтобы Ive разместил каждое имя файла в командной строке, как указано выше. Я собрал его в блокнот, и на нем появилось около 25 файлов. Когда я копирую и вставляю его в командной строке, последние несколько файлов отсутствуют, и я предполагаю, что это может быть ограничение буфера командной строки (?). Есть ли возможность увеличить длину буфера?
Есть ли какой-либо параметр, который я могу поместить все файлы в текстовый файл и передать его как аргумент svn commit?
Ответы
Ответ 1
Вы можете использовать svn changelist, чтобы отслеживать набор файлов, которые вы хотите совершить вместе.
Связанная страница содержит множество подробностей, но здесь приведен пример исполнительного резюме:
$ 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
Ответ 2
Вы можете использовать опцию --targets ARG
, где ARG - это имя текстового файла, содержащего цели для фиксации.
svn ci --targets myfiles.txt -m "another commit"
Ответ 3
У меня не было проблем с несколькими файлами, вроде этого:
svn commit fileDir1/ fileDir2/ -m "updated!"
Ответ 4
Используйте набор изменений.
Вы можете добавить столько файлов, сколько хотите, в набор изменений, сразу или несколько команд; а затем передать их всем за один раз.