結論から先にいうと、みんなgithubへの URL のリンク貼るときに、masterのbranchへのリンク*1貼ってることがほとんどだけど、それって微妙にあとから不便になるから、特定のtreeかtagへの参照を貼りませんか?っていう話
いまの一文で意味わかる人は以下の文章読む必要ありません。以下詳細な説明
githubでのそれぞれのプロジェクトのトップページは、デフォルトだとmasterのbranchを表示します。ちなみにこれは設定から変えられます( tag は無理っぽい? )
例えば、 specs2はトップページのデフォルトが1.6のbranchになっています
https://github.com/etorreborre/specs2
今書いたことは、プロジェクトの管理者側の話で、直接関係ないです。*2
で、ここから本題というか言いたいことですが、
githubは、左の行番号表示の部分をクリックすると、その行へのリンクになってURLにも #のあとに行番号が続くようになります。例えば、以下のような感じ
で、この行番号でのリンクがとても便利なわけですが、これをmasterへのリンクにしてしまうと、あとから見たときにソースコード変わってると、参照する場所ずれちゃいますよね?
まぁ絶対全員にやれ!とも思わないですが、結構開発が活発なプロジェクトの場合には、数日前にtwitterやblogに貼ったgithubへのリンクが、すぐに意味不明になってしまうことも結構あります(行がちょっとずれたならまだしも、ファイル名やディレクトリ構成が変更になって完全にリンク切れになる可能性もある)
なので、自分がgithubのURLをtwitterやblogに貼る場合、tagがあれば以下のように tag を選んで
tagへのリンクを貼るようにしています。
URLが
となり、こうすれば、tagが変更される(普通はそんなことほぼありえない)とか、tag自体が削除されることがない限りURLのリンクがあとから意味不明になる可能性が大幅に減ります。
もしくは、ちょうどいい tag がない場合は、commitのページからたどって、以下のようなURLで特定のtreeを直接参照するようにすることもできます。
以上どーでもいい細かいことですが、ほとんど実践してる人を見かけないので書いて見ました。まぁめんどくさいんですが、せっかく丁寧にblogの記事書いたり、勉強会の発表のスライドにURL埋め込んでも、あとからリンク先が意味不明になるのはもったいないので、場合によっては実践するといいんじゃないかと思います(・ω・`)
あと余談として、Scala本体ってgithubにミラーされている
けれど、このblogを書いている時点ではすべてのtagがgithub上にあるわけではないので、基本的に自分がScala自体のソースコードへのリンクを貼るときは、以下の EPFL *3 のtracから、特定のtagへのリンクを貼るようにしています。 もうtagもgithubにあるみたいなので、epflのほうにリンク貼らないほうがよいかも。そもそもepflのほうは、もう更新されないみたいだし