Мне нужен простой способ получить версию файла с помощью cvs. Я могу получить его, используя файл CVS/Entries
. Это небезопасно, и я думаю, что должен быть другой путь. cvs log
печатает слишком много, чем мне нужно. Как я могу получить только номер версии какого-либо файла с помощью команд cvs.Команда CVS для получения текущего номера версии файла
ответ
cvs log -h
показывает только информацию заголовка. Чтобы получить только версию, достаточно легко фильтровать ее через sed, awk или Perl.
Это дает вам версию в репозитории. Если вы хотите версию извлеченного файла, вы можете использовать ident
(часть RCS) - но только если вы включили правильные ключевые слова в файл. (Это не работает для двоичных файлов.)
Например, если добавить что-то вроде следующего в файл, прежде чем проверять его в:
# $Id:$
# $Source:$
затем ident foo.txt
напечатает что-то вроде этого:
foo.txt:
$Id: foo.txt,v 1.3 2011/10/17 22:49:45 kst Exp $
$Source: /path/to/repo/sandbox/foo.txt,v $
Имеется ряд других ключевых слов, которые вы можете использовать. Подробные сведения см. В разделе руководства CVS Keyword substitution.
Это может пойти не так по-разному; например, если вы отредактируете файл после его проверки, расширенные ключевые слова не обязательно будут отражать что-либо значимое. Вы можете использовать cvs diff
, чтобы определить, был ли файл изменен после проверки.
Как я уже говорил, если вы попытаетесь сделать это с помощью двоичного файла, это может привести к повреждению файла (поэтому, если вы укажете CVS, что файл двоичный, он не будет заменять ключевые слова).
Команда ident
является частью RCS, а не CVS, поэтому вам придется установить RCS на вашу систему, если она еще не существует. (Было бы разумно иметь команду cvs ident
, я не уверен, почему ее там нет.)
Больше «современных» систем управления источниками, как правило, не предоставляют этого средства.
- 1. Команда CVS для получения всех номеров версий файла?
- 2. Команда ClearCase для получения последней метки файла?
- 3. Что делает команда CVS?
- 4. cvs удалить все версии
- 5. Команда для получения svn diff текущего и предыдущего номеров версий
- 6. Переместить файл в CVS без сброса номера версии
- 7. получить md5sum всей версии файла в CVS
- 8. Команда Linux для получения местоположения файла env
- 9. Ошибка получения номера версии имени каталога
- 10. номер версии cvs на eclipse
- 11. Команда cvs setview
- 12. Извлечение текущего номера кадра
- 13. Получить последний номер версии файла из репозитория cvs
- 14. Команда APDU для получения серийного номера смарт-карты
- 15. JParsec для номера версии
- 16. Проверьте тег, ветвь проверенного файла CVS
- 17. Как найти репозиторий CVS для определенного файла?
- 18. Как отобразить содержимое версии CVS
- 19. Стратегия для получения текущего пользователя
- 20. Использование powershell для получения текущего контекста пользователя
- 21. Удаление номера версии из файла с Maven
- 22. msi номера версии
- 23. Чтение номера версии из файла AssemblyInfo.cs
- 24. Команда git для получения данных о фиксации для определенного файла
- 25. Команда оболочки для извлечения номера
- 26. Как интерпретировать номер версии CVS?
- 27. инкремент номера версии файла с командным файлом
- 28. Простой способ получения текущего номера цикла во время цикла?
- 29. Выбирание номера версии
- 30. Получение текущего и предыдущего номера версии на Google Chrome Extension
Да Мне нужна версия моего извлеченного файла. Можете ли вы привести пример, как использовать 'ident' – Ashot
@Ashot: см. Мой обновленный ответ –
Современные системы управления версиями не предоставляют этого средства, поскольку общий консенсус в том, что Bad Idea избыточно хранит информацию о версиях в исходном коде. –