Используя Подрывную деятельность, как я могу сократить из одного файла и вставки к другой истории сохранения

Я действительно не получаю то, что Вы хотите сделать, но вот список некоторого музыкального программного обеспечения CL, и для состава и для познания: http://www.cliki.net/Music

14
задан Steve314 13 October 2009 в 00:27
поделиться

4 ответа

Вы можете объединить все ревизии (или определенные ревизии) одного файла в другой следующим образом

svn merge sourcefile targetfile -r 0:HEAD

Сначала я подумал, что нужно использовать - ignore-ancestry (поскольку оба файла не имеют общей истории), но, очевидно, в этом нет необходимости. Я тестировал svn 1.6.3.

Вы, конечно, очень вероятно получите много маркеров конфликтов в результате слияния. Может быть проще выполнить слияние вручную (копирование и вставка слияния, как вы говорите), а затем запустить указанную выше команду слияния с - record-only , чтобы сообщить об этом Subversion.

После при слиянии целевой файл будет иметь свойство svn: mergeinfo , которое указывает, какие коммиты из исходного файла были слиты с ним. Когда вы просматриваете журнал targetfile , вы можете просмотреть историю обоих файлов, используя параметр - use-merge-history . TortoiseSVN имеет ту же функцию в виде флажка в форме журнала.

17
ответ дан 1 December 2019 в 12:52
поделиться

Если вы хотите скопировать в новый файл и удалить старый файл:

svn mv

Если вы хотите скопировать в новый файл:

svn copy

Если оба файла уже существуют:

# copy/paste with a text editor

Вы можете удалить файл и сохранить его историю с помощью:

svn del

С SVN вы не можете отслеживать историю слияния двух файлов. Вы можете объединить его вручную и сохранить след в сообщении фиксации.

1
ответ дан 1 December 2019 в 12:52
поделиться

Разве вы не можете оставить код в отдельном файле (после обрезки частей, которые вы не хотите сохранять) и включить этот файл в свой настоящий исходный файл?

// file foo.cpp:
...
namespace {
#  include "util_code.inc"
}

Не совсем ортодоксальный, но должен работать ...

-1
ответ дан 1 December 2019 в 12:52
поделиться

Я не думаю, что вы можете сохранить историю так, как вы ее описываете. SVN отслеживает историю для каждого файла отдельно, и он не будет отслеживать два отдельных файла, которые объединены вместе в одной строке кода.

Если вы начали с двух отдельных файлов, а затем объединили их в третий, история обоих файлов будет сохранена. Если вы объедините один в другой, то история одного из них будет «утеряна» в том смысле, что вы не сможете вернуться к истории «удаленного» файла, просто взглянув на историю.

Я думаю, что вы могли бы сделать в сообщении о фиксации, просто отметьте, что содержимое из другого файла было объединено, а затем зафиксируйте удаление в том же коммите.

4
ответ дан 1 December 2019 в 12:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: