Linux
 Computer >> コンピューター >  >> システム >> Linux

Gitの初心者向けガイド

Gitの初心者向けガイド

Linuxユーザーの場合、おそらく新しいプログラムをダウンロードしようとしたり、CVSやSubversionなどのバージョン管理システムを調べたりしているときにGitに出くわしたことがあるでしょう。 Gitは、既存のソリューションに満足できないため、Linuxカーネルの有名なLinusTorvaldsによって作成されたリビジョン管理システムです。設計の主な重点は、速度、より具体的には効率にありました。 Gitは、以前のシステムの多くの欠点に対処し、すべてをはるかに短い時間で実行します。 Gitの学習を検討している場合は、この初心者向けガイドが開始に役立ちます。

Gitの機能

顧客向けのWebサイトの作成に取り組んでいるとします。彼らは彼らが望むものを述べ、あなたはそれを設計し、彼らはそれをレビューしそして修正をします、等。顧客からの修正の各セットで、サイトは変化しそして成長します。後で、顧客は「去年の9月の見た目がもっと好きだ」と言うかもしれません。通常の状況では、問題が発生します。その時点からのすべてのファイルとデータがない可能性があり、コードが大幅に変更されているため、元に戻すのが困難または不可能である可能性があります。

改訂管理システムのポイントは、上記の段落のほぼすべての問題を解決することです。コードとファイルへの各変更を追跡し、いつでも元の場所に戻すことができます。

Gitの仕組み

各プロジェクトのディレクトリは、独自のGitリポジトリです。そのプロジェクトのすべてのファイルをそのディレクトリに保持し、ファイルの現在の状態で情報を更新するようにGitに定期的に指示します。状態を記録するようにGitに指示するプロセスは、commitです。 。コミットするたびに(頻繁に行われるはずです)、Gitは追跡するように指示されたすべてのファイルを調べ、それらのファイル(すべての新しいファイルではない)の違いを「.git」ディレクトリに保存します。各コミットは、プロジェクト開発の新しい保存ポイントになります。

オプションで、ローカルのgitリポジトリをGitHubや独自のGitサーバーなどの外部ホストにプッシュできます。これにより、プロジェクトの複数の寄稿者がローカルリポジトリに頻繁に高速でコミットし、それらすべてのローカルコミットをオンラインリポジトリへの単一の更新にバンドルできるようになります。

これは、Gitを他のバージョン管理システム(VCS)よりも高速に使用できるようにするものの1つです。サーバーにアップロードする時間と帯域幅を無駄にすることなく、ローカルリポジトリに頻繁にコミットできます。

Gitの取得

ほとんどのLinuxディストリビューションには、Gitがプリインストールされています。システムに付属していない場合は、ほとんどのリポジトリですぐに利用できるため、ソフトウェアセンターまたはパッケージマネージャーから簡単にインストールできます。

Gitの初心者向けガイド

ターミナルにインストールできます:

# Debian/Ubuntu
sudo apt install git-all
 
# Fedora
sudo dnf install git-all

別のプラットフォームを使用している場合、またはそのようなリポジトリを使用できない場合は、ここからパッケージをダウンロードして手動でインストールできます。

Gitの使用

ローカルのgitリポジトリを作成するプロセスは迅速かつ簡単です。まず、プロジェクトに使用するディレクトリを作成し、その場所でターミナルを開きます。

cd /my-git-directory

次のコマンドでGitリポジトリを開始します:

git init

これにより、リポジトリ情報を保持するための「.git」ディレクトリ(ビューから非表示)が作成されます。おそらく、いくつかのファイルの追加を開始することをお勧めします。まず、簡単なREADMEファイルを作成し、それをリポジトリの監視対象ファイルのリストに追加してから、ファイルをリポジトリにコミットします。

#Insert some text into a new file
echo "TODO: Create documentation" > README.txt
 
#Now tell Git to keep track of this file's changes
#This only needs to be done once per file (more
#on that in a moment)
git add README.txt
 
#And now save state to Git repository
git commit README.txt

テキストエディタ画面(ディストリビューションと設定に応じて正確にどのテキストエディタが使用されるか)が表示され、このコミットに関するメモを入力する必要があります。これらは通常、最後のコミット以降に発生した変更の簡単な要約です。テキストエディタを保存して終了すると、コミットは正常に完了します。

Gitの初心者向けガイド

上記の間に、Gitがあなたを認識できないというエラーをスローした場合は、あなたが誰であるかを伝える必要があります。それを行うのは、入力するのと同じくらい簡単です:

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

基本的に、そのファイルの現在の状態のスナップショットを作成しました。 (コミットした)それ以上の変更は、その上に保存されます。

上記の例のように、各ファイルを個別に追加してコミットすると、面倒になる可能性があります。これを修正するには、代わりに

を使用して現在のディレクトリ内のすべてのファイルを追加できます。
#Note the trailing "."
git add .

を使用してすべての既知の変更されたファイルを一度にコミットできます
git commit -a
Gitの初心者向けガイド

その他の便利なgitコマンドオプションは次のとおりです。

#Make a full clone of existing repository, such as from the website of a software project
git clone (URL, ie git://github.com/github/linux-2.6.git)
 
#Move/rename a file.  This spares you from having to remove and re-add the file 
#if it had been moved by bash
git mv (source) (destination)
 
#Delete a file and remove from Git repo
git rm (target)
 
#See branches in this repository
git branch
 
#Create a new branch of the Git tree
git branch (new branch name, ie "experimental")
 
#Switch from one branch to another
git checkout (branch name, ie "experimental")
 
#Merge branch (branch) into current tree
git merge (branch)

もちろん、それはGitができることのほんの始まりにすぎません。 GItをマスターしたら、Githubの使用を開始し、プルリクエストにスクリーンショットとアニメーションを追加する方法を学ぶことができます。


  1. タッチタイピングの初心者向けガイド

    タッチタイピング、つまり、キーボードを見る必要なしに10本の指すべてでタイピングするスキルは、タイピング速度を大幅に向上させたい場合に役立つスキルです。タッチタイピングを初めて使用する場合は、ここに初心者向けのガイドがあります。 タッチタイピングとは タッチタイピングはタッチスクリーンとは何の関係もありません。基本的に、タッチタイピングとは、キーボードの文字を見なくても、すべての指で入力できる機能です。これは、キーボード上の各文字、数字、記号の配置を記憶するだけでなく、どの指がどのキーを制御するかを記憶することによっても実現できます。 タッチタイピングの利点 最初は、タッチタイピングを使用

  2. HTMLとCSSの初心者向けガイド

    今日、私たちのサイトを支えているさまざまなテクノロジーを見つけることができますが、インターネット全体で最も重要な2つのファイルはHTMLとCSSです。はい、複雑なものが必要な場合は、それに対応するためのテクノロジーもさらに必要になります。ただし、単純な個人用Webページを作成するだけの場合は、HTMLとCSSだけで十分です。 基本の紹介 これは、HTMLとCSSの初心者向けガイドであり、簡単なサイトをできるだけ早く作成する方法を示しています。結果は必ずしも「標準に準拠」しているとは限りません。さらに微調整して拡張したい場合は、自分で読む必要があります。ただし、これはサイトであり、ほとんどのブ