GNU/Linux >> Linux の 問題 >  >> Linux

Linux での GIT の紹介 – インストール、プロジェクトの作成、ファイルのコミット

GIT は、最も用途の広い分散バージョン管理システムです。

GIT がファイルの変更を追跡して処理する方法は非常に効率的であり、他のバージョン管理ソフトウェア (CVS や Subversion を含む) が変更を追跡する方法とは異なります。

この記事は、GIT を初めて使用する方を対象としています。これは、ソースから GIT をインストールする方法、新しいプロジェクトを作成する方法、変更を GIT リポジトリにコミットする方法を示すジャンプスタート ガイドです。

CVS/SVN の経験がある場合は、リポジトリがサーバーにインストールされているクライアント サーバー モデルに変換します。クライアントを使用して、リポジトリからプロジェクトをダウンロードし、変更を加えて、サーバーのリポジトリにコミットします。

GIT はクライアント サーバー モデルを使用しません。リモート GIT リポジトリからプロジェクトをダウンロードすると、個々のファイルのバージョン履歴と変更を含むすべてがダウンロードされ、ローカル GIT はサーバーとして機能し、チェックイン、チェックアウト、およびその他すべてを実行できます。典型的なバージョン管理活動。後で準備ができたら、変更をリモート GIT リポジトリにマージできます。

そのため、ローカル マシンで GIT を使用して独自のプロジェクトを管理する場合でも、サーバーに GIT をインストールする場合でも、インストールと構成の手順はまったく同じです。他の開発者はそこからプロジェクトをローカル GIT リポジトリにダウンロードします。 /P>

あなたが開発者であれば、次の 2 つの理由からローカル マシンに GIT をインストールすることをお勧めします。 GIT リポジトリ。

システム管理者であれば、GIT をサーバーにインストールして、会社のすべてのソース コードを保持する中央リポジトリとして機能させることができます。ここから、開発者がプロ​​ジェクトをローカル GIT リポジトリにダウンロードし、変更を加え、完了したら中央リポジトリにチェックインできるようにすることができます。

GIT をどのように使用する予定であるかに関係なく、インストール手順と以下で説明する基本的なコマンドはまったく同じです。

1. GIT をダウンロードしてインストール

まず、ここから GIT をダウンロードします。または、以下に示すように wget を使用して直接ダウンロードします。

cd
wget http://kernel.org/pub/software/scm/git/git-1.7.6.tar.bz2

次に、ダウンロードしたファイルを解凍します。

tar xvfj git-1.7.6.tar.bz2
cd git-1.7.6

最後に、デフォルトの構成オプションを使用して、以下に示すように GIT をインストールします。インストールをカスタマイズする場合は、「./configure –help」を実行して、利用可能なすべての構成オプションを表示します。

./configure

make

make install

2.初期設定

Git はデフォルトで /usr/local/bin にインストールされます。 GIT をインストールしたら、以下に示すように確認してください。

$ whereis git
git: /usr/local/bin/git

$ git --version
git version 1.7.6

$ git --help.

最初のステップは、以下に示すように、「git config」を使用してユーザー名とメール アドレスを GIT リポジトリに指定することです。

git config --global user.name "GIT Admin"

git config --global user.email [email protected]

以下に示すように、git 構成情報を確認します。

$ git config --list
user.name=GIT Admin
[email protected]
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true

この情報は、ホーム ディレクトリの下の .gitconfig ファイルに保存されます。

$ cat ~/.gitconfig
[user]
        name = GIT Admin
        email = [email protected]

3.プロジェクトを作成

任意のローカル ディレクトリを GIT プロジェクト (つまり、リポジトリ) として作成できます。たとえば、プロジェクトが /home/ramesh/projects/passworddragon の下にある場合、それを GIT プロジェクトとして作成できます。まず、cd でそのディレクトリに移動し、以下のように git init を実行します。

$ cd /home/ramesh/projects/passworddragon

$ git init
Initialized empty Git repository in /home/ramesh/projects/passworddragon/.git/

これにより、プロジェクト フォルダーの下に .git ディレクトリが作成されます。以下は、.git ディレクトリの内容です。 GIT はこのディレクトリを使用して、変更の追跡方法に関する情報を保存します。

$ ls -altr .git
total 40
drwxrwxr-x  4 git git 4096 Aug 13 22:39 refs
drwxrwxr-x  4 git git 4096 Aug 13 22:39 objects
drwxrwxr-x  2 git git 4096 Aug 13 22:39 info
drwxrwxr-x  2 git git 4096 Aug 13 22:39 hooks
-rw-rw-r--  1 git git   23 Aug 13 22:39 HEAD
-rw-rw-r--  1 git git   73 Aug 13 22:39 description
-rw-rw-r--  1 git git   92 Aug 13 22:39 config
drwxrwxr-x  2 git git 4096 Aug 13 22:39 branches
drwxrwxr-x 36 git git 4096 Aug 13 22:39 ..
drwxrwxr-x  7 git git 4096 Aug 13 22:39 .

注:あなたがシステム管理者で、開発者がプロ​​ジェクトをダウンロードできる GIT 中央リポジトリを作成しようとしている場合は、「git」というユーザー名を作成し、このアカウントですべてのプロジェクトを整理することをお勧めします。例:/home/git/project1、/home/git/project2 など。プロジェクトを整理したら、cd でプロジェクト ディレクトリに移動し、そこから git ユーザーとして「git init」を実行します。

4.プロジェクトにファイルを追加してコミットする

「git init」を使用してプロジェクトを初期化したら、「git add」を使用して、このプロジェクト ディレクトリにあるファイルを追加します。

プロジェクト ディレクトリにさまざまな種類のファイルがあり、GIT で特定の種類のファイルのみを管理する場合は、以下に示すようにそれらのみを GIT に追加します。この例では、*.java および *.c ファイルのみを追加します。

git add *.java
git add *.c

通常、プロジェクト ディレクトリの下にあるすべてのファイルを GIT プロジェクトに追加します。 「git add .」を実行するだけで、現在のディレクトリ内のすべてのファイルとすべてのサブディレクトリが GIT プロジェクトに追加されます。

git add .

ファイルをリポジトリに追加したら、以下に示すように、それらのファイルをコミットする必要があります。

$ git commit -m 'Initial upload of the project'
 create mode 100755 PasswordDragon.java
 create mode 100755 pwm/ui/DataManager.java
 create mode 100755 pwm/ui/PasswordFrame.java
 create mode 100755 pwm/tools/StrongEncryption.java
 create mode 100755 pwm/tools/PasswordStrength.java
 ..

上記のように「git config」を使用してユーザー名とメール アドレスを指定しなかった場合、次のエラー メッセージが表示されます。

$ git commit -m 'Initial upload of the project'

*** Please tell me who you are.

Run

  git config --global user.email "[email protected]"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: empty ident   not allowed

5.ファイルを変更してコミットする

GIT をインストールし、プロジェクト リポジトリを作成し、すべてのファイルを GIT プロジェクトにコミットしました。

ここで、ファイルに変更を加えてリポジトリにコミットします。

vi PasswordDragon.java

ローカルでファイルを変更したら、変更を表示できます。つまり、ローカル コピーと、以下に示すように「git diff」を使用して GIT プロジェクトで既にコミットされているコピーとの違い。

$ git diff
diff --git a/PasswordDragon.java b/PasswordDragon.java
index 6166ed1..fd82d32 100644
--- a/PasswordDragon.java
+++ b/PasswordDragon.java
@@ -2,7 +2,7 @@
-    public counter=10
+    public counter=55

変更を加え、変更を確認し、満足したら、ファイルを GIT リポジトリにコミットできます。これは 2 段階のプロセスです。まず、ファイルをステージング領域に追加し、以下に示すように GIT プロジェクトにコミットする必要があります。

git add PasswordDragon.java

コミットを実行すると、デフォルトのエディターが開き、コメントを入力できます。コメントを保存してエディターを終了すると、ファイルが GIT プロジェクトにコミットされ、次のメッセージが表示されます。

$ git commit
[master 80f10a9] Added password strength meter functionality
 1 files changed, 56 insertions(+), 7 deletions(-)

注:「git commit -a」を実行することもできます。これにより、追加とコミットが同時に行われます。

6.ステータスとコミット ログの表示

ローカル リポジトリから「git status」を実行すると、現在のステータスが表示されます。ローカル コピーが変更されていない場合 (またはすべてのファイルがコミットされている場合)、次のメッセージが表示されます。

$ git status
# On branch master
nothing to commit (working directory clean)

ファイルに変更を加え、まだコミットしていない場合は、次のメッセージが表示されます。

$ git status
# On branch master
# Changes not staged for commit:
#   (use "git add ..." to update what will be committed)
#   (use "git checkout -- ..." to discard changes in working directory)
#
#       modified:   PasswordDragon.java
#
no changes added to commit (use "git add" and/or "git commit -a")

以下に示すように、ファイルの履歴を表示することもできます。

$ git log PasswordDragon.java
commit c919ced7f42f4bc06d563c1a1eaa107f2b2420d5
Author: GIT Admin
Date:   Sat Aug 13 22:54:57 2011 -0700

    Added password strength meter functionality

commit c141b7bdbff429de35e36bafb2e43edc655e9957
Author: GIT Admin
Date:   Sat Aug 13 20:08:02 2011 -0700

    Initial upload of the project

Linux
  1. Linuxで特定のリポジトリからパッケージをインストールする方法

  2. Linux サーバーに CVS をインストールして CVS リポジトリを作成する方法

  3. Linux での仮想ファイルへのファイルの連結

  1. Linuxで特定のサイズのファイルを作成する方法

  2. Ubuntu Linux に .deb ファイルをインストールする方法

  3. Linux diff ツール:変更されたファイルのリストを作成する

  1. GNOMEでテンプレートファイルを作成する

  2. Linuxでカスタムrpmリポジトリを作成する方法

  3. Linuxで開発者環境を作成する手順