Переход от CVS к Git: $ Id: $ эквивалент?

Как насчет этого? Это немного другое, но, надеюсь, пригодное для использования, поскольку оно соответствует парадигме CSV:

>>> df.columns = ['y{}'.format(name) for name in df.columns]
>>> df.to_csv('output.csv')
>>> print open('output.csv').read()
x,y0,y1,y2,y3
0,3.5,1.5,1.6,0.3
1,7.0,4.7,6.5,5.2
2,6.6,7.6,3.2,5.5
3,4.0,2.8,7.1,7.8
119
задан Peter Mortensen 28 July 2018 в 19:09
поделиться

8 ответов

SHA является всего одним представлением версии (хотя канонический). git describe команда предлагает другим и успевает так вполне.

, Например, когда я работаю git describe в моем основном ответвлении моего Java memcached клиент источник, я получаю это:

2.2-16-gc0cd61a

, Который говорит две важных вещи:

  1. было точно 16 фиксаций в этом дереве с тех пор 2.2
  2. точны , исходное дерево может быть отображено на чьем-либо еще клоне.

Скажем, например, Вы упаковали version файл с источником (или даже переписал все содержание для распределения) показать то число. Скажем, та упакованная версия была 2.2-12-g6c4ae7a (не выпуск, а действительная версия).

можно теперь видеть точно, как далеко позади Вас (4 фиксации), , и Вы видите точно который 4 фиксации:

# The RHS of the .. can be origin/master or empty, or whatever you want.
% git log --pretty=format:"%h %an %s" 2.2-12-g6c4ae7a..2.2-16-gc0cd61a
c0cd61a Dustin Sallings More tries to get a timeout.
8c489ff Dustin Sallings Made the timeout test run on every protocol on every bui
fb326d5 Dustin Sallings Added a test for bug 35.
fba04e9 Valeri Felberg Support passing an expiration date into CAS operations.
65
ответ дан Peter Mortensen 28 July 2018 в 19:09
поделиться
  • 1
    @Val Ваше открытие *... Изучите, как образованные люди пишут, Вы won' t быть в состоянии связаться с другими *перед изучением этого. – Marcelo 7 November 2013 в 06:41

Если наличие $Keywords$ важно для Вас, затем возможно, Вы могли попытаться посмотреть Подвижный вместо этого? Это имеет hgkeyword расширение, которые реализуют то, что Вы хотите. Подвижный интересно как DVCS так или иначе.

8
ответ дан Keltia 28 July 2018 в 19:09
поделиться
  • 1
    @LuiggiMendoza JVM не имеет никакого отношения к реализации BigDecimal (библиотека Java). You' ре, путающее две разных вещи. – alfasin 7 November 2013 в 06:33

Если Вы просто желаете, чтобы люди смогли понять, насколько устаревший они, Мерзавец может сообщить им об этом несколькими довольно простыми способами. Они сравнивают даты последней фиксации на их соединительной линии и Вашей соединительной линии, например. Они могут использовать git cherry для наблюдения, сколько фиксаций произошло в соединительной линии, которые не присутствуют в их.

, Если бы это - все, которое Вы хотите это для, я искал бы способ обеспечить его без номера версии.

кроме того, я не потрудился бы расширять любезность до любого, если Вы не уверены, что они хотят ее. :)

4
ответ дан Peter Mortensen 28 July 2018 в 19:09
поделиться
  • 1
    1.0! = 1.00 типично в физике, например - 1,0 средства 1 +/-0.05 тогда как 1,00 средства 1 +/-0.005. Проверьте ссылку, которую я предоставил. Я думаю, что это - базовая причина 1,0! =1.00 в BigDecimal: арифметическая точность. – assylias 7 November 2013 в 23:22

Если я понимаю правильно, по существу, Вы хотите знать, сколько фиксаций произошло на данном файле начиная с Вас последнее обновление.

Первый получают изменения в удаленном источнике, но не объединяют их в Ваш master ответвление:

% git fetch

Затем получают журнал изменений, которые произошли на данном файле между Вашим master ответвление и удаленным origin/master.

% git log master..origin/master foo.el

Это дает Вам сообщения журнала всех фиксаций, которые произошли в удаленном репозитории, так как Вы в последний раз объединились origin/master в Ваш master.

, Если Вы просто хотите количество изменений, передайте его по каналу к wc. Скажите, как это:

% git rev-list master..origin/master foo.el | wc -l
3
ответ дан Otto 28 July 2018 в 19:09
поделиться
  • 1
    @LuiggiMendoza тот же байт-код BigDecimal загружается на любой реализации JVM. JVM является просто механизмом, который управляет пассажиром (библиотеки Java), таким образом, это не имеет никакого отношения к нашей проблеме. – alfasin 7 November 2013 в 06:58

Что-то, что сделано с репозиториями Мерзавца, должно использовать эти tag объект. Это может использоваться для меток фиксации с любым видом строки и может использоваться для маркировки версий. Вы видите, что теги в репозитории с эти git tag команда, которая возвращает все теги.

легко проверить тег. Например, если существует тег v1.1, можно проверить тот тег к ответвлению как это:

git checkout -b v1.1

, Поскольку это - объект верхнего уровня, Вы будете видеть целую историю к той фиксации, а также мочь выполнить diffs, внести изменения и слияния.

Не только, что, но и тег сохраняется, даже если ответвление, что оно шло, было удалено, не будучи объединенным назад в основную строку.

8
ответ дан Peter Mortensen 28 July 2018 в 19:09
поделиться
  • 1
    @MichaelKrelin-hacker: Едва ли - I' ve закончился путем предложения, чтобы SCHEDULES.time был TIMESTAMP WITHOUT TIME ZONE поле; я don' t видят это в Вашем (удаленном) ответе. – Jon Skeet 23 November 2011 в 08:36

Как I’ve, записанный прежде :

автоматически генерировавший идентификационные теги, которые показывают, разумный номер версии невозможно сделать с инструментами DSCM как Базар, потому что everybody’s строка разработки может отличаться от всех других. Таким образом, кто-то мог обратиться к версии “1.41” файла, но Ваша версия “1.41” того файла отличается.

В основном, $Id$ не имеет никакого смысла с Базаром, Мерзавцем и другими распределенными инструментами управления исходным кодом.

20
ответ дан Community 28 July 2018 в 19:09
поделиться
  • 1
    @Val благодарит за ссылку - you' ve понял положительную мысль даже при том, что он формулировался определенным грубым способом. – alfasin 7 November 2013 в 04:45

Не уверенный это когда-либо будет в Мерзавце. К Linus кавычки:

"Целое понятие замены ключевого слова просто полностью глупо. Это тривиально, чтобы сделать "вне" фактического довольного отслеживание, если Вы хотите иметь его при выполнении деревьев выпуска как шаров tar и т.д.",

довольно легко проверить журнал, хотя - при отслеживании стабильного ответвления foo.el Вы видите, какие новые фиксации находятся в журнале стабильного ответвления, которые не находятся в Вашей локальной копии. Если Вы хотите моделировать число внутренней версии CVS, можно сравнить метку времени последней фиксации.

Редактирование: необходимо записать или использовать чужие сценарии для этого, конечно, не сделать это вручную.

23
ответ дан orip 28 July 2018 в 19:09
поделиться
  • 1
    Это не объясняет вообще, потому что это предлагает, чтобы любой объект, который допускает несколько представлений, был непоследователен, противоположно к дизайну, который предписывает интерфейс Comparable. Кроме того, Вы май compare objects на основе их местоположения в памяти (реализация по умолчанию Object.equals). Я не понимаю, почему необходимо сделать BigDecimal 1.0! = 1.00. Почему методы Плавающие не имеют различных целей? – Val 7 November 2013 в 22:06

Поскольку вы используете Emacs, вам может повезти:)

Я сталкивался с этим вопросом по стечению обстоятельств, а также по стечению обстоятельств, с которыми я столкнулся Lively Несколько дней назад, пакет Emacs, который позволяет иметь живые кусочки Emacs Lisp в вашем документе. Я не пробовал, если честно, но это пришло мне в голову при чтении.

0
ответ дан 24 November 2019 в 01:31
поделиться
Другие вопросы по тегам:

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