Можем ли мы выбрать версию для проверки в CVS? - PullRequest
0 голосов
/ 21 июля 2010

Я обновил cvs несколько раз и хочу получить одну из более старых версий, возможно ли получить разные версии одного и того же файла?Или это должна быть только последняя проверенная версия?

Ответы [ 2 ]

2 голосов
/ 21 июля 2010

Переключиться на определенный номер ревизии: cvs update -r 1.42 myfile

Переключиться на определенный тег: cvs update -r mytag

Переключиться на определенную дату: cvs update -D 'last friday 12:00 PST'

ЕслиВы еще не извлекли какую-либо версию, вы можете передать -r или -D напрямую cvs checkout.

Все они переключают вашу рабочую копию на указанную вами ревизию или дату (это называется«Клейкая бирка»).Чтобы вернуться к основной ревизии, наберите cvs update -A.

Вы также можете извлечь определенную ревизию в другой файл с помощью опции -p: cvs update -p -r 1.42 myfile >myfile-1.42.Это не касается вашей рабочей копии myfile.

1 голос
/ 21 июля 2010

Да - в языке CVS кажется, что вы зафиксировали несколько версий (в хранилище), и теперь вы хотите вернуть один из предыдущих оборотов ... так что вы будете обновлять свою песочницу.Если это особенно интересная версия, вы можете пометить ее, чтобы найти ее снова, не используя номер версии.

В любом случае вы можете запустить команду cvs, например, так:

cvs update -r 1.14 foo.java
cvs update -r spiffy_tag foo.java

Но знайте, что если вы запустите какой-либо из них, у вас будет «прикрепленный тег» в вашей локальной копии, и вы не сможете зафиксировать его оттуда.(Запустите "cvs status foo.java", чтобы увидеть залипание) ... так что если вы хотите поработать над этой версией и настроить ее, вы можете сначала создать ветку ... затем, если вы запустите:

cvs update -r my-branch foo.java

вы сможете зафиксировать изменения в репо.

...