Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
40
Help us understand the problem. What is going on with this article?
@soramugi

gitのhookでtags作成

More than 5 years have passed since last update.

git pull とかcheckoutで勝手にtags作成してほしかったので調べた時のをメモ。
プロジェクトのルートディレクトリ直下の.git/hooksディレクトリにhookさせるファイルを置けば良いんだけど毎回置くのも面倒なので勝手に作ってくれる設定

command
cd
mkdir -p .git_tmp/hooks
cd .git_tmp/hooks
touch post-commit # git commit hook
touch post-merge # git merge, git pull hook
touch post-checkout # git checkout hook
touch ctags
chmod +x *

post-系、ctagsの中の記述は以下

post-系
#!/bin/sh
.git/hooks/ctags >/dev/null 2>&1 &
ctags
#!/bin/sh
/usr/local/bin/ctags -R .

git init時に自動的に作成したhooksファイルが作成されるように以下を流す。

command
cd
git config --global init.templatedir '.git_tmp' 

既存のgitプロジェクトにはgit initコマンドを打てば設定したhooksが反映される。既にあるファイルは上書きされないみたいです。

vim-fugitiveを使っている場合

やらなくてもいいんだけど
vim-fugitiveはtagsの読み込み場所を追加してくれているようだ。

.git/tagsを閲覧できるようになっている。
https://github.com/tpope/vim-fugitive/blob/master/plugin/fugitive.vim#L154

tagsが普段見えないところに置ける。せっかくなのでそこに追加してあげる記述方法は以下。

ctags
#!/bin/sh
/usr/local/bin/ctags -R -f .git/tags `pwd`

参考

40
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
soramugi
自己紹介を設定してみる!

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
40
Help us understand the problem. What is going on with this article?