0. 目次
- Git の特徴
- Windows で msysgit
- GitHub でリポジトリを作成
- 日本語の設定
- Git を使うためのクライアント - TortoiseGit
- Git のコマンドを使ってみる
1. Git の特徴
ソースコードの管理に GitHub を利用してみる。
Git - Wikipedia とは、
プログラムなどのソースコード管理を行う分散型バージョン管理システム。動作速度に重点が置かれている。Linuxカーネルのソースコード管理を目的として、リーナス・トーバルズによって開発された。
特徴を押さえておく。
Gitは、arch等にも採用される分散リポジトリをサポートしており、
- 中央リポジトリからコピーする
- コピーしたリポジトリを編集し、コンテンツの修正、追加、削除を行う
- ローカルへコミットする
- 中央リポジトリへ変更内容を反映させる
という形で行われる。
リポジトリへのアクセスは
- ローカル
- WebDAV
- Git 独自プロトコル
- rsync
- ssh
を用いる(書き込みができるのはローカル、WebDAV および ssh)。
(同上より)
分散バージョン管理なので、基本的な考え方として、
… ローカルのリポジトリ(master)をリモートのリポジトリ(origin)にプッシュ、つまり反映させます。
(せっかちな人のための git 入門 - git をインストールし、共同で開発できる環境を整えるまで : 僕は発展途上技術者 より)
詳しくは以下を参照。
2. Windows で msysgit
Windows で git を使うために 「github を Windows で使ってみる | Numb.」 を参考にした。
をダウンロードしてインストール。
( はじめて msysgit を設定したときは、msysGit-netinstall-1.5.4-rc0-preview20071217.exe を利用した。今回は Git-1.7.0.2-preview20100309.exe 。)
とっても優しい github の使い方 - ¬¬日常日記 によると、
あ、私のようなgit初心者の方は、まず最初に … 名前とメールアドレスを設定しておいて下さい。これを忘れるとマシン名とかがコミットログに残って恥ずかしい感じになります。
最初に、名前とメールアドレスを設定しておく。
git config --global user.name "名前" git config --global user.email メールアドレス
これにより、環境変数 %HOME% 以下に .gitconfig ファイルが作成された。
3. GitHub でリポジトリを作成
- Your Dashboard – GitHub において Create a Repository により新規にリポジトリを作成。
- 最低限 Project Name を記述し、 Create Repository ボタンを押す。
- この後に行うコマンドライン上での作業が表示される。
- Global setup については上記で既に行なったので、それ以降の作業を行う。
SSH-key の作成
リポジトリへアクセスするための認証用に SSH-key を作成。
先ほどインストールした Git Bash を起動して、
ssh-keygen -t rsa –C "メールアドレス"
これにより環境変数 %HOME% 以下に .ssh フォルダが作成され、その中に
- id_rsa
- id_rsa.pub
の二つのファイルができる。
この内、id_rsa.pub の内容を Your Account - GitHub の SSH Public Keys に設定。
git remote コマンドにより、リモートのリポジトリを指定
上記の「コマンドライン上での作業」における Next steps: には、次のように書かれていた。
mkdir プロジェクト名 cd プロジェクト名 git init touch README git add README git commit -m 'first commit' git remote add origin git@github.com:ユーザ名/プロジェクト名.git git push origin master
ファイル README を追加した後、コミットして、プッシュするという作業の流れ。
プッシュする前のコマンド git remote add は、git-remote(1) によると、
git remote add [-t <branch>] [-m <master>] [-f] [--tags|--no-tags] [--mirror] <name> <url>
ここでの add の意味は、
add Adds a remote named <name> for the repository at <url>.
name と url を結び付ける。
git push では、上記で設定した name を指定。
git-push(1) の Examples によると、
git push origin master Find a ref that matches master in the source repository (most likely, it would find refs/heads/master), and update the same ref (e.g. refs/heads/master) in origin repository with it. If master did not exist remotely, it would be created.
初回の実行では master がリモートに作成される。
4. 日本語の設定
を参考にして、日本語の設定を行う。
C:\Program Files\Git\bin に less と nkf を配置。
C:\Program Files\Git\etc\inputrc に以下を記述。
set convert-meta off set meta-flag on set output-meta on set kanji-code utf-8
C:\Program Files\Git\etc\profile に以下を追記。
export GIT_EDITOR="'<使用するテキストエディタのパス>'" export GIT_PAGER="nkf -s | less"このとき、テキストエディタのパス中の「\」は「/」に、「C:」は「/c」に置き換えて指定する。
(同上より)
これにより、ソースコードが変更されたフォルダで、Git Bash を起動 (右クリック > Git Bash) し、
git diff ファイル名
を実行すると、日本語が表示される。
ファイルの中身を見たいときは、
nkf –s ファイル名 | less
5. Git を使うためのクライアント - TortoiseGit
コマンドライン上での操作ではなく、GUI で Git を扱いたいなら TortoiseGit tortoisegit を使う。TortoiseSVN に慣れている場合は、これを使うのが良い。
Download – tortoisegit より、「本体」と「言語パック」をダウンロードする。
日本語化
言語パックをインストールした後、
- TortoiseGit > Settgings > General > TortoiseGit > Language:
において、日本語を選択する。
SSH
を参考にして SSH を設定。
上記では 「OpenSSHの秘密鍵をPuTTY形式に変換して使う」 方法も書かれている。TortoiseGitの設定ダイアログを開き、「Network」の「SSH client」にmsysgit付属のssh.exeを指定する。
6. Git のコマンドを使ってみる
まずは、基本的なところで 「github を Windows で使ってみる | Numb.」 より、
- git add README
- README というファイルをリポジトリに追加
- git commit -m ‘first commit’
- ローカルのリポジトリに変更を適用 ‘first…’ のところはコメント
- git push origin master
- リモートリポジトリに変更を適用( master を origin に push )
- ( cd hogehoge )
git pull origin master- (ローカルリポジトリのディレクトリに移動して)リモートリポジトリの変更をローカルリポジトリに適用
その他、解説しているサイトを試して慣れる。
コマンドの解説としては以下を参照。
チェックアウト
既にリポジトリにソースが存在し、チェックアウトするには、予め GitHub で SSH の URL コピーしておく。
Git Bash において、
git clone git@github.com:ユーザ名/プロジェクト名.git
このとき公開鍵を作成したときのパスワードを入力。
TortoiseGit を使う場合は、適当なフォルダで右クリック > Git Clone… 。github にある SSH の URL を入力して Web を選択。
コミットとプッシュ
- TortoiseGit を使うなら、ソースコードを変更した後、右クリック > Git Commit –> “master”… 。
- ローカルの変更をリモートに反映させるには、右クリック > Tortoise Git > Push 。
ブランチの削除
間違えて作成したブランチを削除したい。
リモートのブランチの削除は
% git push origin :experimental
git-push(1) によると、
git push origin :experimentalFind a ref that matches experimental in the origin repository (e.g. refs/heads/experimental), and delete it.
Git Bash を起動し、上記 experimental の代わりに、GitHub のリポジトリのページにある `Switch Branches’ に表示される `削除したいブランチ名’ を入れて実行する。
0コメント:
コメントを投稿