Gitを始めるまでにやったことのまとめ

Gitをというよりバージョン管理システム自体をちゃんとやった事がなかったのでGitを導入してみることにした。
Gitは分散型バージョン管理システムで最近流行っているそうだ。

WindowsでのGit環境構築とその注意点 – SourceForge.JP Magazine
http://sourceforge.jp/magazine/09/02/12/0530242

上を参考にmsysgitをインストールした。
git-guiは正直微妙なので、下を参考にTortoiseGitをインストールした。

実用レベルに達したWindows向けGitクライアント「TortoiseGit」でGitを始めよう – SourceForge.JP Magazine
http://sourceforge.jp/magazine/09/06/19/0340248

もう基本的な機能はそろってる感じで、フォントを変えれば日本語も表示はできる。
日本語ファイル名は異なる環境が参照する場合はまだ問題があるらしい。

Gitの基礎練習
http://hyuki.com/techinfo/gitinit.html

上はgitコマンドの練習。gitの流れでローカルまでの範囲をわかりやすく書かれている

  git init //初期化
  git add README //ファイルをgitの管理下に加える
  git commit -m 'first commit' // 変更点をコミットする
ここまではまだローカルの範囲
ここからはgithub.comなど外部と連携する
  git remote add origin git@github.com:azu/test.git //どこのレポジトリと連携するかを設定
  git push origin master // ローカルの状態をサーバにpush(反映させる)する
pushして初めてサーバに反映するので、commitしただけはローカルにしか反映はしてない。

次にGitHubにpushする方法を学ぶ

GitHubでアカウントを作って、Create a New Repositoryからレポジトリを作成する。
作成してそのレポジトリにアクセスするとGlobal setup: … Next steps:のように実行する事が書いてあるのでGit Bashを立ち上げる。
mysgitをインストールしたときに

Run Git and included Unix tools from the Windows Command Prompt

WindowsでのGit環境構築とその注意点 – SourceForge.JP Magazine

を選択してるなら、コマンドプロンプトでもgitコマンドが打てるようになっているので、その場合はコマンドプロンプトや
NYAOSなどのコマンドラインシェルでもいいはず。(コマンドプロンプトのコマンドと競合するらしいがパスを変えることで大丈夫になるとか)

setupなどをする前にgitHubにアクセスできるようにするため、gitHubにパブリックキーの登録をしないといけません

Using Git and Github for the Windows for newbies – Guides – GitHub
http://github.com/guides/using-git-and-github-for-the-windows-for-newbies
windowsでgit用にSSH鍵を作る手順 – Guyon Diary
http://d.hatena.ne.jp/guyon/20081021/1224683687
Big Sky :: SSHポートが通らなくてもgithub.comにpushする方法
http://mattn.kaoriya.net/software/20081029172540.htm
これがわかりやすい

上の二つを参考にssh-keygenを実行すると、以下の場所にid_rsa.pubが生成されるので、それの中身をYour Account – GitHubのSSH Public Keysに登録する。(タイトルは適当でいい)

SSH Public Keysに登録

SSH Public Keysに登録

Xp : C:\Documents and Settings\YourNameHere\.ssh\
Vista : C:\Users\YourNameHere\.ssh\

実際にgitHubにpushする

では実際にレポジトリを作ったときに表示されているコマンドを上からやっていくと、自分の環境ではgit pushするとエラーになってしまった。
これは先ほどのBig Sky :: SSHポートが通らなくてもgithub.comにpushする方法を参考にgithub.comへのssh接続にすることで解決できました。
Big Skyさんのブログは結構躓くところの解決法が多くあるので読んでおくといいかも。

.sshフォルダのconfigファイルは以下のように設定しました。(次の事を考えてgist.github.comも入れてあります。)

Host github.com
    User git
    Hostname ssh.github.com
    Port 443
    IdentityFile ~/.ssh/id_rsa
Host gist.github.com
    User git
    Hostname ssh.github.com
    Port 443
    IdentityFile ~/.ssh/id_rsa
    TCPKeepAlive yes
    IdentitiesOnly yes

これでやっとgit remoteしてgit pushするというサーバとの連携ができるようになりました。
gitコマンドはかなり数があるので、そのうち勉強する。

gitやめてmercurialとtortoiseHGをインストール にある種Gitの特徴が書かれてる。

gist.github.comでコードペーストしたものをローカルにダウンロードする方法

Gist – GitHub は使い捨てのコードを公開したりすることができGreasemonkeyなども相性がよいため、よく利用してる。
今まで、貼り付けたものをまとめてローカルに保存するにはgistyというrubyでできたコマンドを使う事でできる。
gistyはgist(コードペーストサービスの事)を便利に使うためのツール

gistコマンドよりちょっと便利なgisty – SWDYH
http://d.hatena.ne.jp/swdyh/20081207/1228655198

gistyを使うにはActive Rubyでもいいので入れておいてから、管理者権限でコマンドプロンプト(or git bash)を起動して必要なものをインストールする。

gem sources -a http://gems.github.com
gem install nokogiri
gem install swdyh-gisty

windowsで

export GISTY_DIR="$HOME/dev/gists"

をやってもなぜか記憶されなかったので、C:\Program Files\Git\etcのprofileというファイルの最後に
export GISTY_DIR=/d/gists という感じでデータフォルダを入れる。

このとき、テキストエディタのパス中の「\」は「/」に、「C:」は「/c」に置き換えて指定する。たとえば「C:\Program Files\xyzzy/xyzzy.exe」というエディタを使用したい場合は次のように指定する。

WindowsでのGit環境構築とその注意点 – SourceForge.JP Magazine

を参考にした

git config --global github.user your_id
git config --global github.token your_token

上を各自のものに変えて実行してトークンを登録する。C:\Users\ユーザー名\.gitconfigに記録される。

実際にgist.github.comからpullする

上の環境設定が済んでるならば、Gist bash上で

gisty

と打てば、使えるコマンドが表示されると思います。
gist.github.comから自分がコードペーストしたものをローカルに持ってくるには、
gisty pull_all か gisty sync をすれば自動的にすべてpullしてきてくれます。
しかし、この時ひとつpullする毎にパスフレーズを要求されてしまったので、ssh-agentを使ってパスワード認証をなしにしてからpull_allをする。

$ eval `ssh-agent`
$ ssh-add ~/.ssh/id_rsa
パスワードなしで pull/push
http://www.pshared.net/diary/20090418.html

オマケ

gisty postするときにmacはブラウザで開いてくれるわけではないので、クリップボードにポストしたgistのURLを取得するようにしてみた。 C:\Ruby\lib\ruby\gems\1.8\gems\swdyh-gisty-0.0.14\lib\gisty.rb とからへんにあるの置き換える。

windowsAPIを使ってるみたいなのでwindowsだけ対応で、

gem install win32-clipboard

をインストールする必要がある。

感想

ホントに導入が面倒。
情報が思ったようにでてこない(特にWindows系)ので大変。
エクスプローラプラグインなどを持っているエディタからはTortoiseGitが使えるので大変便利。
ショートカット(.lnk)からgistyでpostしたいけど、やり方がよく分からなかった。
Emeditorから編集してるファイルをgistyでポストしたかった。

以下、参考したところ

<ul id=”list”>
<li id=”id_4607881″>
<div class=”title”><strong> <a class=”item” href=”http://mattn.kaoriya.net/software/20090106180947.htm” target=”_blank”>Big Sky :: Windowsでもssh-askpassを使う</a> </strong></div>

</li>
<li id=”id_18639302″>
<div class=”title”><strong> <a class=”item” href=”http://mattn.kaoriya.net/software/20081106192615.htm” target=”_blank”>Big Sky :: Windowsでもssh-agentとssh-addを使ってパスフレーズ入力を省略する。</a> </strong></div>

</li>
<li id=”id_15718544″>
<div class=”title”><strong> <a class=”item” href=”http://www.atmarkit.co.jp/flinux/rensai/linuxtips/447nonpassh.html” target=”_blank”>@IT:sshでパスワードなしにログインするには</a> </strong></div>

</li>
<li id=”id_18628535″>
<div class=”title”><strong> <a class=”item” href=”http://www.pshared.net/diary/20090418.html” target=”_blank”>指定したディレクトリ以下にだけあるディレクトリ一覧のパスを取得する, パスワードなしで pull/push – Ussy Diary(2009-04-</a> </strong></div>

</li>
<li id=”id_18628367″>
<div class=”title”><strong> <a class=”item” href=”http://d.hatena.ne.jp/LukeSilvia/20090418/p1″ target=”_blank”>git 環境のセットアップと簡単なチュートリアル – Slow Dance</a> </strong></div>

</li>
<li id=”id_18628133″>
<div class=”title”><strong> <a class=”item” href=”http://bw28.blog5.fc2.com/?tag=git” target=”_blank”>オレのメモ</a> </strong></div>

</li>
<li id=”id_18628083″>
<div class=”title”><strong> <a class=”item” href=”http://www.clear-code.com/blog/2009/7/8.html” target=”_blank”>TortoiseGitでOpenSSHの鍵を使う – ククログ(2009-07-08)</a> </strong></div>

</li>
<li id=”id_18595686″>
<div class=”title”><strong> <a class=”item” href=”http://ok-lab.org/blog/archives/522″ target=”_blank”>oklablog – TortoiseGit で plink.exe を使ってリモートリポジトリにpushする</a> </strong></div>
<small> <em class=”domain”> <a href=”http://ok-lab.org/”>ok-lab.org</a> </em> | </span> <a class=”text” href=”http://readitlaterlist.com/text/18627871/?t=unread&amp;p=1″>Text View</a> | </span><a id=”m18627871″ class=”check”>Mark as Read</a></small></li>
<li id=”id_12001842″>
<div class=”title”><strong> <a class=”item” href=”http://sourceforge.jp/magazine/09/02/12/0530242/3″ target=”_blank”>WindowsでのGit環境構築とその注意点 – SourceForge.JP Magazine</a> </strong></div>

</li>
<li id=”id_18612908″>
<div class=”title”><strong> <a class=”item” href=”http://d.hatena.ne.jp/Seasons/20090329/1238340961″ target=”_blank”>GitとDYNAの連携で幸せになるショートカット – Seasons.NET</a> </strong></div>

</li>
<li id=”id_16904299″>
<div class=”title”><strong> <a class=”item” href=”http://www.hyuki.com/techinfo/gitinit.html” target=”_blank”>Gitの基礎練習</a> </strong></div>

</li>
<li id=”id_18607925″>
<div class=”title”><strong> <a class=”item” href=”http://blog.digital-squad.net/article/109547754.html” target=”_blank”>git (msysgit)をWindowsにインストール|WEBデザイン Tips</a> </strong></div>

</li>
<li id=”id_3404034″>
<div class=”title”><strong> <a class=”item” href=”http://d.hatena.ne.jp/swdyh/20081207/1228655198″ target=”_blank”>gistコマンドよりちょっと便利なgisty – SWDYH</a> </strong></div>

</li>
<li id=”id_18580154″>
<div class=”title”><strong> <a class=”item” href=”http://mattn.kaoriya.net/software/20081029172540.htm” target=”_blank”>Big Sky :: SSHポートが通らなくてもgithub.comにpushする方法</a> </strong></div>

</li>
<li id=”id_6494823″>
<div class=”title”><strong> <a class=”item” href=”http://sourceforge.jp/magazine/09/02/12/0530242″ target=”_blank”>WindowsでのGit環境構築とその注意点 – SourceForge.JP Magazine</a> </strong></div>

</li>
<li id=”id_6111342″>
<div class=”title”><strong> <a class=”item” href=”http://sourceforge.jp/magazine/09/02/02/0655246″ target=”_blank”>分散バージョン管理システムGit入門 – SourceForge.JP Magazine</a> </strong></div>

</li>
<li id=”id_18542789″>
<div class=”title”><strong> <a class=”item” href=”http://drewblas.com/2008/06/27/setting-up-git-and-github-on-windows/” target=”_blank”>Setting up Git and Github on Windows « Drew Blas – The life and code of a p</a> </strong></div>

</li>
<li id=”id_18538117″>
<div class=”title”><strong> <a class=”item” href=”http://d.hatena.ne.jp/stellaqua/searchdiary?word=%2a%5bGit%5d” target=”_blank”>[Git] – Stellaqua – TOMの技術日記</a> </strong></div>
<small> <em class=”domain”> <a href=”http://d.hatena.ne.jp/”>d.hatena.ne.jp</a> </em></small></li>
<li id=”id_18537953″>
<div class=”title”><strong> <a class=”item” href=”http://d.hatena.ne.jp/stellaqua/20081110/1226298802″ target=”_blank”>Gitを触ってみるよ その2「WindowsでGitを使いやすくする」 – Stellaqua – TOMの技術日記</a> </strong></div>

</li>
<li id=”id_12001463″>
<div class=”title”><strong> <a class=”item” href=”http://yakinikunotare.boo.jp/orebase/index.php?Git%2F%B0%EC%BF%CD%A4%C7%BB%C8%A4%C3%A4%C6%A4%DF%A4%EB%A1%CAmsysgit%CA%D4%A1%CB” target=”_blank”>Git/一人で使ってみる(msysgit編) – 俺の基地</a> </strong></div>

</li>
<li id=”id_18525733″>
<div class=”title”><strong> <a class=”item” href=”http://wp.graphact.com/2008/08/09/382″ target=”_blank”>github を Windows で使ってみる | Numb.</a> </strong></div>
<small> <em class=”domain”> <a href=”http://wp.graphact.com/”>wp.graphact.com</a> </em></small></li>

</li>
</ul>

Related posts:

  1. Gitでレポジトリのclone
  2. TomblooからTwitterにポストするときに、頭に”見てる:”と付けるパッチ
  3. ニコニコ動画のAPIのメモのメモ
  4. gistへGreasemonkeyを貼るときに自動でファイル名を入力するスクリプト
  5. はてなダイアリーへのポスト機構を追加するGreasemonkeyスクリプト

Leave a Reply

プロフィール: azu(あず)
Firefoxの事やソフトウェアの紹介や使い道、Greasemonkeyの作成
  • OS:Vista
  • ブラウザ:Firefox
  • Twitterのアカウントはこちら
  • azu_re
  • メールアドレス(Twitterの方が確実)
  • info@ドメイン名
リンク

WebMoney ぷちカンパ

あわせて読みたい