WindowsにGitを導入してみる

やりたいこと要約

・windowsにgitを導入し,プログラムの更新履歴を確保
・リモートリポジトリをDropbox上に作成することで,リポジトリ自体のバックアップをとる

この方法を用いることで,リモートリポジトリ自体はDropboxに保存(バックアップも兼用)する.
ファイルの更新自体はローカルリポジトリ内で行なう(例えばC:\cygwin配下など).
これにより,プログラムのコンパイルなどはローカルリポジトリ内で行なうことが可能となり,
加えてDropbox内にあるリモートリポジトリにPushを行なうことでプログラムのバックアップ自体も可能となる.

世の中にはgithubという便利なものもあるが,これはリポジトリ内容が公開されてしまう.
もっとプライベートにやりたいというか,自分の汚ソースを全世界に曝け出すなんて申し訳ないという人用

Gitのインストール

Windowsでgitを動かすためには
・msysgit
・cygwin git
の2種類が大きくある[1].

当初は既にCygwin環境がPCにインストールされていたこともあり,cygwin gitを使おうと思っていたが,
GUIソフト(TortoiseGitを想定)との相性が悪いとのこと[2]で断念.
msysgitを使うことにする.

ところがmsysgitをインストールしようとすると

00

Cygwinが入ってるからインストールできねーよカスと怒られる.
CygwinのPATHを切れば良いとのことなので

『C:\cygwin\bin;C:\cygwin\usr\local\bin;C:\cygwin\usr\sbin;』

この辺を削除してみてインストールをリトライ.
Cygwinの方もとりあえず問題なく動いているようなのでPATHを切る分には今のところは問題ない(はず)

コマンドライン画面でインストールが完了.

TortoiseGitのインストール

さらにgitをGUIでいじくれるようにTortoiseGitというソフトをインストール[3]

ネットワークチェンジニアとして
http://www41375u.sakura.ne.jp/server/revision/tortoisegit.html

このインストールに関しては上記サイトを参考にインストーラで次へ次へと押していけば大丈夫

リモートリポジトリの作成

リモートリポジトリはDropbox内に作成する.
例えばDropbox\Repos
というディレクトリに対し,Repotestというフォルダを作成.

01

右クリックメニューから「Git Create repositoty here」を選択

02

すると

03

こういうアラートが出るので「Make it Bare (No working directories)」というチェックボックスを付けてOKボタンを押す.
すると

04

「レポジトリつくったでー」というアラートが出る.これでリモートリポジトリの完成.

ローカルリポジトリの作成

次に開発環境へリモートリポジトリをコピー(クローン)する.
今回はCygwinを想定しているので
C:\cygwin\home\ユーザー名
辺りにでも作成する.

リポジトリをコピーしたいフォルダまで移動したら右クリックメニューから
「Git Clone」
を選択する.

05

その際に,URL, Directoryの設定が正しい場所をしているかどうかを確認.
指定なかった場合は,URLにリモートリポジトリのパス,Directoryにローカルリポジトリとしたいパスを設定する.

06

Successという内容を表わすウィンドウが出ますので黙ってCloseをクリック.
すると当該フォルダに

07

Dropbox上に存在するものと同じものが作成される.

ファイルの更新(コミットまで)

基本的にファイルの更新はローカルリポジトリの中身を更新していく.

ここでは例えば以下の様なC++のプログラムを作成する.

これをtest.cppとして保存.
まず,ローカルリポジトリの内容を更新する(Commit)
ローカルリポジトリ内の空いているところで右クリック

08

「Git Commit -> “master”」をクリック

09

コミットしたいファイル(今回はtest.cpp)にチェックボックスをつけて,コミット内容を「Message」に書いてOKをクリック.
するとコミットが完了したというウィンドウが出る.
そのままローカルリポジトリに対して今回のコミットを反映させることもできる(Push)こともできるのですが,今回はとりあえずCloseボタンをクリック

10

リモートリポジトリへPush

このままだとローカルリポジトリ内の内容が,Dropbox上にあるリモートリポジトリへは反映されていないので,更新内容をPushさせる.
先ほどと同様に,ローカルリポジトリ内の空いている場所を右クリックし,Pushをクリック

11

何やら物騒なウィンドウが出てくるが,特に変更もせずそのままOKを押す

12

するとリモートリポジトリに対してPushが行なわれる.

13

これでDropbox上のリポジトリも更新される.

Push内容の確認

本当にPushされているかどうかを確認するためには,リモートリポジトリを右クリックし,

14

「Show log」を選択.

15

このように,先ほどのコミット内容を表わすMessage及び,対象ファイルが表示されている.
この後は逐次リモートリポジトリ内容を更新し,その都度コミット + Push を行なっていくことになる.

おわりに

偉そうなことを言っていますが,Gitについては始めたばかりで,まあ動いているので当面は良しとしておきますm(__)m

参考サイト

[1]Windows環境でGitを使う
http://www.02.246.ne.jp/~torutk/git/gitonwindows.html

[2]msysGit(Git for Windows)がいよいよ公式に UTF-8 をサポート! – てっく煮ブログ
http://tech.nitoyon.com/ja/blog/2012/02/21/msysgit-utf8/

[3]ネットワークチェンジニアとして
http://www41375u.sakura.ne.jp/server/revision/tortoisegit.html

[4]サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ
http://www.backlog.jp/git-guide/

新年のご挨拶

明けましておめでとうございます

1日遅れですが、新年のご挨拶とさせて頂きますm(__)m

6月からほそぼそとほぼ自分のためだけに書いているブログですが、一応半年くらいは継続しているようなのでとりあえずヨシとしておきますm(__)m
今後の方針としてはとりあえず3月までは学生ですので、毎営業日とりあえず新聞のメモを続けていきたいと思います。
4月以降は、いよいよ就職ということで、ブログ更新の時間が日々のルーチンの中に組み込めるかどうかがキーとなっております。

そんなに朝の早い部門ではないと思うので、今までどおり朝起きて見たものをそのまま垂れ流すというスタイルが4月以降も継続されていくと思います。

ただニュース記事のメモだけだと芸がないですので、久しく更新されていないプログラミングの記事とかも(本来はこちらをメインにしたかった)書いていければなあと思います。

ということで本年も誰得ブログMomentumを何卒宜しくお願い致します。