GitをWindowsクライアント・CentOS 7サーバーにインストールしてみました

git

このたび、GitをWindowsクライアント・CentOS 7サーバーにインストールしてみました。

インストール手順と簡単なリポジトリの操作方法をまとめました。

スポンサーリンク
スポンサーリンク

GitがSubversionに取って代わりつつある

現在、バージョン管理システムはSubversionからGitに取って代わりつつあります。

image

上記の出典は、KianLeong.comです。

以下の記事によると、

http://www.kianleong.com/index.php/git-is-giving-subversion-a-run-for-its-income-what-took-so-lengthy

GitはSubversionに取って代わりつつあります。

まぁ、感覚的には当然かなんと思います。

集中サーバー方式Subversionから分散方式にGitに移行するのは時代の当然の流れ。

というわけで、初めて本格的にGitのサーバー構築をしてみました。

Git for Windowsのインストール

http://msysgit.github.io/

からGit for Windowsのインストーラーをダウンロードしてインストールします。

本日現在の最新のインストーラーは、Git-1.9.4-preview20140815.exeです。

インストールは、すべてデフォルト設定で「次へ」を押してインストールしました。

Windowsのスタートメニューを見てみます。

image

「Git」→「Git Bash」を実行します。

testというディレクトリを作成して、aaa.txtというファイルにaaaと書き込んでGitのローカルリポジトリで管理するための手順は以下の通りです。

git config --global user.nameでユーザー設定、git config --global user.emailでemail設定をすることさえ覚えれば超簡単です。

取り急ぎ、覚えるべきコマンドは以下の通りです。

  • git config --global    グローバル設定
  • git init    リポジトリの作成
  • git add    リポジトリに管理するファイルの指定
  • git commit    リポジトリへコミット
  • git status    ステータス表示
  • git log    ログ表示
  • git rm    ファイルの削除
  • git mv    ファイルの移動

Gitサーバーの構築

Centos 7でGitのサーバーを構築します。

サーバーのIPアドレスは192.168.141.132とします。

yumでGit関連のパッケージをインストールします。

/etc/xinet.d/gitというファイルを作成し以下の内容を書き込みます。

2015.02.21追記 この作業はおそらく不要と思われます。

xinetd.serviceを(再)起動します。

2015.02.21追記 この作業はおそらく不要と思われます。

/var/lib/git/repositoryというフォルダを作成します。

/var/lib/git/repositoryの直下にtestというリポジトリを作成してから、Linuxのグループgitを作成し、/var/lib/git/repository/testのグループ権限をgitに変更しておきます。

# git init --bare --shared でリポジトリ作成ができます。

CentOS 7サーバーにクライアントからsshでログインできるユーザーxxxxを作成し、グループ権限をgitにしておきます。

Windowsクライアント側のGit BashからGitサーバーのリポジトリへの接続を行うために、以下のコマンドを実行します。

最初の$ git pushで失敗するのは、ブランチを指定していないためです。

この時は、以下のエラーが表示されます。

No refs in common and none specified; doing nothing.
Perhaps you should specify a branch such as 'master'.
fatal: The remote end hung up unexpectedly

取り急ぎ、サーバーとの接続時に覚えるべきコマンドは以下の通りです。

  • git remote add <name> <url>   リモートリポジトリを追加する
  • git push    リモートリポジトリにプッシュする
  • git pull    リポートリポジトリからプルする
  • git clone    リモートリポジトリからクローンを作る

Gitのおすすめの本

↓Gitのおすすめの本はコチラ

git

Gitのまとめ

CVSやSubversionなどのバージョン管理を経験した人なら、特に迷うことはないと思います。

Subversionからのリポジトリ移行ツールgit-svnとかもあるようなので、すでにSubversionでリポジトリを管理しているプロジェクトならGitへの移行を進めた方がよいと思います。

これから新しいプロジェクトを管理するなら、迷わずにGitを使いましょう。