「git」タグアーカイブ

metro-clojure – gitリポジトリで地下鉄路線図を作るClojure製ツール

gjhenrique/metro-clojure は、鉄道路線図をgitのコミット/ブランチログで再現するためのオープンソースツールです。

路線と路線に所属する駅名を並べた json ファイルが入力となります。サンプルとしてサンパウロとニューヨークのデータがついてきてるので、それを参考にします。


[
{
"name": "銀座線",
"stations": [
"渋谷",
"表参道",
"外苑前",
"青山一丁目",
"赤坂見附",
"溜池山王",
"虎ノ門",
"新橋",
"銀座",
"京橋",

データをツールに食わせると、git コマンド群を発行するシェルスクリプトを作ってくれます。


$ boot generate-git-commands -c tokyo -f tokyo.sh

大江戸線のような循環があると、git グラフが作れないためツールはエラーで止まります。そりゃそうですね。

都庁前の循環を外して再度挑戦するも、東京のいたるところの乗換駅でエラーが… あちらとこちらで乗り換えができれば、循環だらけにもなりますね。


# 渋谷 銀座線 半蔵門線 副都心線
git checkout --orphan "銀座線"
git commit --allow-empty -m "渋谷"
git branch -f "副都心線" HEAD
git branch -f "半蔵門線" HEAD
# 代々木上原 千代田線
git checkout --orphan "千代田線"
git commit --allow-empty -m "代々木上原"
# 代々木公園 千代田線
git commit --allow-empty -m "代々木公園"
# 明治神宮前 千代田線 副都心線
git merge --strategy=ours --allow-unrelated-histories --no-ff --commit -m "明治神宮前" 副都心線
git branch -f "副都心線" HEAD
# 北参道 副都心線
git checkout "副都心線"
git commit --allow-empty -m "北参道"
# 方南町 丸ノ内線分岐線
git checkout --orphan "丸ノ内線分岐線"
git commit --allow-empty -m "方南町"
# 中野富士見町 丸ノ内線分岐線
git commit --allow-empty -m "中野富士見町"
# 中野新橋 丸ノ内線分岐線

「赤坂見附-永田町」のような別名の乗換駅の同一化を諦め、さらにエラーを起こす乗換駅を同一にしないよう入力データを修正していって、やっとなんとかエラーを出さなくした結果のスクリプトを、新しい git レポジトリに突っ込むことで、部分的には正しいところもあるぐらいの、東京の地下鉄gitグラフ(東京メトロ+都営地下鉄)を作ってみました。

git log で見るとこんな感じ

東京の路線図は循環しすぎなので、使用例としてはあまり良くないかもしれませんね。

もともとパリの路線図をGitHub 上で再現した2015年の作品があり、metro-clojure はこのような作品を簡単に作れることを目指して制作されたようです。

このツールを使えば、地下鉄の路線図以外の何か身近な有向グラフを git グラフで表現することができますね。

via From metro connections to a git graph

コスプレ写真でGitを学ぶレポジトリ komeiji-satori/Dress

GitHub のkomeiji-satori/Dress は、自分のコスプレ写真をGitで管理し共有するため(A Study and Practice project of git)の学習用レポジトリです。

当プロジェクトで、リポジトリの clone, ブランチの作成, コミットのpush/pull, プルリクエストの作成, の全プロセスを学べます。Git/GitHub の使い方がわかるようになるでしょう。

This project helps you to learn the whole process of cloning a repository, creating a branch, pushing and pulling commits, and making a pull request, thus you can have a good knowledge of Git/GitHub’s usage.

100名近くの contributors が参加していますね。Hacker News で紹介されたことでどっと増えているのかもしれません。

説明が中国語と英語の併記で、必ずしも同じ内容が両方で書かれているようでもないですが、もともとは女装コスプレか異性装コスプレの共有場だったのかもしれません。Contributing.md には「他人の写真を載せない」「可愛いは正義」「性別不問」という参加条件が載っています。

public に全データが公開されていることから、データを利用したウェブサイトが複数作られ、README 中でも紹介されています。

ライセンスはCC 4.0 by-nc-sa とあるため、利用条件に従ってここの写真を再利用する人も出るかもしれませんね。

元々ソースコードの管理や共有のために作られた Git ですが、IT関連の電子書籍の編集などで使っているケースもあります。コードを書けなくても、いろんな人が自分の目的で使える場があれば、世の中の Git 親和性や バージョン管理への理解も高まるのかもしれないなと感じました。もしかしたらすでにあるのかもしれませんが、句会とか水彩画とか、いろいろな趣味の発表場所として使われていくのかも。

via Hacker News

火事の時のgitコマンド

First things first 🙂

A post shared by Tibor Szász (@tiborsaas) on

火災の時は

  1. git commit
  2. git push
  3. 避難せよ

“First things first” = 「まずやるべきこと」

2015年ぐらいから広まっているミーム(meme, ネットの流行語・ネタ)らしいです。

張り紙のデータ

このミームを受けて、写真中の張り紙を再現するデザインがいくつも作られ、公開されています。

https://gist.github.com/monkbroc/c66840b399bbcd93b642

https://github.com/louim/in-case-of-fire

https://github.com/dwyl/hq/issues/175

Tシャツなどのグッズもありました。

git fire コマンド

このmemeが出てきた掲示板の議論を見てると、「新しいブランチを切らないと後で困るんじゃないか」とか「プロジェクトルートにいるとは限らないだろ?」とかいろんな突込みが出てくるのもいつものことのようで、それらに対処するという意味でgit-fire コマンドを紹介する人が多いようです。これを入れておくと、ワンコマンドでより良い退避活動が取れるそう。

# 本当に危険な時は、コマンドなんて打つ前に逃げましょうね。もちろんソーシャルメディアへの投稿も後で

via reddit