CentOS5にGitをインストール&あれこれ

インストール

環境

CentOS 5 x86_64

yumのレポジトリ追加

通常のyumのレポジトリにGitがないため、新規でレポジトリを追加

% vim /etc/yum.repos.d/CentOS-Base.repo

 ----以下を追記--------
[dag]
name=Dag RPM Repository for Redhat EL5
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
enabled=1
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt

インストール

% yum -y install git
% git --version

テストプロジェクト作成

  • http://github.comでtest-projectを作成
  • レポジトリを作成した段階で表示される下記メモをコピーしておく
全体設定
 ダウンロードおよびインストール Git
  git config --global user.name "kashiro"
  git config --global user.email ksrtmyk@gmail.com
  Add your public key
        
次の手順:
  mkdir test-project
  cd test-project
  git init
  touch README
  git add README
  git commit -m 'first commit'
  git remote add origin git@github.com:kashiro/test-project.git
  git push -u origin master
      
すでにGitリポジトリがありますか?
  cd existing_git_repo
  git remote add origin git@github.com:kashiro/test-project.git
  git push -u origin master

公開錠・秘密錠の作成

% ssh-keygen -t rsa

下記が生成される

公開錠の登録

公開錠の中身をgithuのサイトに登録

% cat ~/.ssh/id_rsa.pub

確認

下記が表示されればOK

% ssh git@github.com

The authenticity of host 'github.com (207.97.227.239)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,207.97.227.239' (RSA) to the list of known hosts.
Enter passphrase for key '/home/ksrtmyk/.ssh/id_rsa': 
Hi kashiro! You've successfully authenticated, but GitHub does not provide shell access.
        Connection to github.com closed.
  • 参考

http://d.hatena.ne.jp/Kshi_Kshi/20110217/1297976174

基本操作

  • Gitの基本的な概念はこちら

http://progit.org/book/ja/

  • より詳しい操作はこちら

http://www12.atpages.jp/~lottz/pukiwikiplus/index.php?Git

1 remoteのレポジトリをクローンする

% git clone [url]

*別の名前でコピーしたい場合

% git clone [url] [dir_name]

2 ファイルを追跡ファイルにする(ステージにする)

% git add [file name]

3 変更したけれどもまだステージしていない内容を見る

作業ディレクトリの内容とステージングエリアの内容を比較します

% git diff

4 ステージされている変更と直近のコミットの内容を比較

% git diff --staged

5 コミット

*-aを追加することで、修正されたファイルを一気にコミット(addを省略)

% git commit -m "[comments]"
% git commit -a -m "[comments]"

6 リモートのレポジトリに名前を付与する

% git remote add [remote-name] [github url]

*現在のリモードレポジトリの名前を確認

% git remote -v

7 リモートレポジトリの内容を引き出す

*引き出すだけで、マージはされない

% git fetch [remote-name]

8 リモートレポジトリの内容を引き出し、マージする

% git pull [remote-name]

9リモートレポジトリに内容を登録

% git push [remote-name]