Git分散バージョン管理ツール
1. GitとSVN
SVNは一元化されたバージョン管理システムであり、バージョンライブラリは中央サーバーに一元化されており、開発者は作業時に自分のコンピューターを使用するため、最初に中央サーバーから最新バージョンをダウンロードし、開発後に開発します。 、開発したコードを中央サーバーに送信する必要があります。
一元化されたバージョン管理ツールの欠点:
サーバーの単一点障害
フォールトトレランスが低い
Gitは分散バージョン管理システム(DVCS)であり、2種類のウェアハウスに分かれています。
ローカル倉庫とリモート倉庫
ローカルリポジトリ:開発者のコンピューター上のGitリポジトリ
リモートウェアハウス:リモートサーバー上のGitウェアハウス
クローン:クローンはリモートウェアハウスをローカルにコピーすることです
プッシュ:プッシュとは、ローカルウェアハウスのコードをリモートウェアハウスにアップロードすることです。
プル:プル、リモートウェアハウスコードをローカルウェアハウスにダウンロードする
1.1 Gitワークフロー
ワークフローは次のとおりです。
1。リモートウェアハウスからローカルウェアハウスへのコードの複製
2。ローカルウェアハウスからコードをチェックアウトし、コードを変更する
3。送信する前に、ステージング領域にコードを送信します
4。地元の倉庫に提出します。変更のさまざまな履歴バージョンをローカルウェアハウスに保存する
5。変更が完了した後、コードをチームメンバーと共有する必要がある場合は、コードをリモートウェアハウスにプッシュします。
1.2 Gitのダウンロードとインストール
ダウンロードアドレス:https : //git-scm.com/download
インストール:
2. Gitコードホスティングサービス
2.1一般的に使用されるGitコードホスティングサービス
その中でも、GitHub、Code Cloud、GitLabなどが一般的に使用されています。
gitHub(アドレス:https://github.com/)
コードクラウド(アドレス:https:
//gitee.com/ )GitLab(アドレス:https://about.gitlab.com/)
2.2 Code Cloudにアカウントを登録する
コードクラウド関連サービスを利用するには、アカウントを登録する必要があります(アドレス:https://gitee.com/signup)
2.3 Code CloudにログインしてGitリモートリポジトリを作成する
登録が完了したら、登録したメールアドレス(アドレス:https://gitee.com/login)を使用してログインできます。
クローン/ダウンロードボタンをクリックしてウィンドウをポップアップし、コピーボタンをクリックしてこのネットワークアドレスを取得します。
2.4他のユーザーをウェアハウスのメンバーに招待する
3.一般的なGitコマンド
3.1環境構成
ユーザー情報を設定する
git config --global user.name“ itcast”
git config --global user.email“ [email protected]”
構成情報を表示する
git config --list
git config user.name
上記のコマンドで設定された情報は〜/ .gitconfigファイルに保存されます
3.2 Gitリポジトリを取得する
通常、Gitリポジトリを取得するには2つの方法があります。
a。Gitリポジトリをローカルで初期化する
b。リモートウェアハウスからのクローン
3.2.1 Gitリポジトリをローカルで初期化する
手順は次のとおりです。
-
ローカルGitリポジトリとして、コンピューター上の任意の場所に空のディレクトリ(repo1など)を作成します。
-
このディレクトリに入り、右クリックしてGit bashウィンドウを開きます
-
コマンドgit initを実行します
現在のディレクトリに.gitフォルダー(このフォルダーは隠しフォルダーです)が表示されている場合は、Gitリポジトリが正常に作成されたことを意味します
3.2.2リモートウェアハウスからのクローン
コマンド形式は次のとおりです。git clone remote Git repository address
3.3作業ディレクトリ、一時記憶領域、バージョンライブラリの概念
バージョンライブラリ:以前に表示した非表示の.gitフォルダーはバージョンライブラリです。バージョンライブラリには、多くの構成情報、ログ情報、ファイルバージョン情報が保存されています
作業ディレクトリ(作業領域):.gitフォルダを含むディレクトリは、主に開発されたコードを格納するために使用される作業ディレクトリです
一時記憶域:.gitフォルダーには多数のファイルがあり、インデックスファイルの1つは一時記憶域であり、ステージとも呼ばれます。一時保存領域は、変更されたファイルを一時的に保存する場所です
3.4 Git作業ディレクトリ内のファイルの2つの状態
Git作業ディレクトリ内のファイルは、次の2つの状態で存在します。
untracked untracked(バージョン管理には含まれません)
追跡される(バージョン管理に含まれる)
未変更、未変更ステータス
Modified Modifiedステータス
段階的段階的
これらのファイルのステータスは、Gitコマンドを実行すると変化します
3.5ローカル倉庫の操作
git status:ファイルステータスの表示
----- git status –sを使用して出力情報をより簡潔にすることもできます
git add追跡されていないファイルをステージング領域に追加する
git reset ステージング領域のファイルをキャンセルします
git commit一時的に保存しますゾーンのファイル変更はローカルウェアハウスに送信され
ますgit rmファイルを
削除-----作業領域のファイルのみを削除し、ローカルウェアハウスに送信し
てファイルを無視リストに追加する必要があります
作業ディレクトリに.gitignoreという名前のファイルを作成し(ファイル名は固定されています)、無視するファイルパターンをリストします。次に例を示します。
# no .a files
*.a
# but do track lib.a, even though you're ignoring .a files above
!lib.a
# only ignore the TODO file in the current directory, not subdir/TODO
/TODO
# ignore all files in the build/ directory
build/
# ignore doc/notes.txt, but not doc/server/arch.txt
doc/*.txt
# ignore all .pdf files in the doc/ directory
doc/**/*.pdf
git logビューログレコード
3.6リモート倉庫操作
3.6.1リモート倉庫を表示する
git remote:指定された各リモートサーバーの略語を一覧表示します。
-----リモートリポジトリのクローンを作成した場合は、少なくともoriginが表示されます。これは、Gitクローンウェアハウスサーバーのデフォルト名です。
3.6.2リモートウェアハウスの追加
git remote add:新しいリモートGitリポジトリを追加し、参照できる省略形を指定します
3.6.3リモートウェアハウスからのクローン
git clone [url]:クローンウェアハウス
3.6.4無効なリモートウェアハウスを削除する
git remote rm:リモートリポジトリを削除します
注:このコマンドは、リモートウェアハウスのレコードをローカルから削除するだけで、リモートウェアハウスには実際には影響しません。
3.6.5リモートウェアハウスからの取得とプル
git fetchは、リモートウェアハウスからローカルウェアハウスに
最新バージョンを取得し、自動的にマージされません。gitpullは、リモートウェアハウスから最新バージョンを取得してローカルウェアハウスにマージします。
注:現在のローカルウェアハウスがリモートウェアハウスからクローンされず、ローカルに作成されたウェアハウスの場合、そして、ウェアハウスにはファイルがあります。このとき、リモートウェアハウスからファイルをプルすると、エラーが報告されます(致命的:無関係な履歴のマージを拒否します)この問題を解決するには、git pullコマンドの後にパラメーター--allow-unrelated-historiesを追加します
3.6.6リモート倉庫へのプッシュ
git git push [リモート名] [ブランチ名]:リモートウェアハウスにプッシュ
3.7 Gitブランチ
3.7.1ブランチを表示
#すべてのローカルブランチを一覧表示
$ gitブランチ
#すべてのリモートブランチを一覧表示
$ gitブランチ-r
#すべてのローカルブランチとリモートブランチを一覧表示します
$ gitブランチ-a
3.7.2ブランチを作成する
git branch b1:b1という名前のブランチを作成します
3.7.3ブランチの切り替え
gitチェックアウトb1
3.7.4リモートの倉庫ブランチへのプッシュ
git push origin b1
3.7.5ブランチのマージ
gitはb3に行く
マージ操作はそれほどスムーズではない場合があります。2つの異なるブランチで同じファイルの同じ部分に異なる変更を加えると、Gitはそれらをマージできず、ファイルの競合が発生します。この時点で、競合ファイルを開いて競合の内容を修復し、最後にgit addコマンドを実行して競合が解決されたことを確認する必要があります
3.7.5ブランチを削除する
gitブランチ-d b1
削除するブランチにいくつかの開発アクションがある場合、上記の削除コマンドを実行してもブランチは削除されません。このブランチの削除を要求する場合は、コマンドの-dパラメータを-Dに変更できます。
注:リモートを削除する場合ウェアハウス内のブランチの場合は、コマンドgit push
origin –d branchNameを使用できます
4. IDEAでGitを使用する
4.1 IDEAでGitを構成する
IntelliJ IDEAをインストールした後、Gitがデフォルトのパスにインストールされている場合、アイデアは自動的にgitの場所を検出します。Gitのインストール場所を変更する場合は、Gitパスを手動で構成する必要があります。
ファイル→設定を選択して設定ウィンドウを開き、バージョン管理の下にあるgitオプションを見つけます。
gitインストールディレクトリを選択した後、[テスト]ボタンをクリックして、構成が正しいかどうかをテストできます。
4.2 IDEAでのGitの使用
4.2.1 IDEAでプロジェクトを作成し、プロジェクトをGitに追加する
プロジェクトをGit管理に追加すると、IDEAのツールバーからGit操作のボタンが表示されます