使用するスクリプトがあります
git describe --tags --abbrev=0
リポジトリの最新のタグを特定するため。ここまでは順調ですね。
ただし、同じコミットにタグを付ける必要がある場合、コマンドは、最新ではなく、そのコミットで使用可能な最初のタグを提供します。
ここに簡単な例があります
~ $ mkdir test_dir
~ $ cd test_dir/
test_dir $ git init
Initialized empty Git repository in /home/amaurin/test_dir/.git/
test_dir (unborn) $ touch coucou
test_dir (unborn ✱1) $ git add coucou
test_dir (unborn ✚1) $ git commit -m "Initial Commit"
[master (root-commit) 6972f53] Initial Commit
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 coucou
test_dir (master ✔) $ git tag 1
test_dir (master ✔) $ git describe --tags --abbrev=0
1
test_dir (master ✔) $ git tag 2
test_dir (master ✔) $ git tag
1
2
test_dir (master ✔) $ git describe --tags --abbrev=0
1
最後の電話では、1 ではなく 2 を期待していましたが、その理由がわかりません...
面白いことに、GIT の変更ログで、同様の問題が既に修正されているのを見たことがあります。
- 「git describe」は、同じコミットを指すタグを正しくタイブレークしませんでした。
タガーの日付に注意を払うことで、新しいものが優先されます。
https://www.kernel.org/pub/software/scm/git/docs/RelNotes-1.7.1.1.txt 面白いことに、最近のバージョンの git を使用しています。
$ git --version
git version 2.2.1
助けてください :'-(
ため息・・・ため息・・・