一般的に使用されるgitコマンドのリスト(詳細な説明付き)

1.倉庫を作成します

現在のディレクトリをGitリポジトリとして使用するには、ディレクトリを初期化する必要があります。

git init

コマンドが実行されると、現在のディレクトリに.gitディレクトリが生成されます。
指定されたディレクトリをGitリポジトリとして使用します。

git init newrepo

初期化後、.gitという名前のディレクトリがnewrepoディレクトリの下に表示され、Gitに必要なすべてのデータとリソースがこのディレクトリに保存されます。

現在のディレクトリにバージョン管理に含めるファイルが複数ある場合は、git addコマンドを使用して、これらのファイルの追跡を開始するようにGitに指示してから、以下を送信する必要があります。

git add *.c
git add README
git commit -m '初始化项目版本'

上記のコマンドは、.cで終わるディレクトリとREADMEファイルをウェアハウスに送信します。

2.倉庫をチェックしてください

git cloneを使用して、既存のGitリポジトリからプロジェクトをコピーします(svn checkoutと同様)。

ウェアハウスのクローンを作成するためのコマンド形式は次のとおりです。

git clone <repo>

指定したディレクトリにクローンを作成する必要がある場合は、次のコマンド形式を使用できます。

git clone <repo> <directory>

パラメータの説明:

repo:Gitリポジトリ。
ディレクトリ:ローカルディレクトリ。

たとえば、Ruby言語のGitコードリポジトリGritのクローンを作成するには、次のコマンドを使用できます。

git clone git://github.com/schacon/grit.git

このコマンドを実行すると、現在のディレクトリにgritという名前のディレクトリが作成されます。このディレクトリには、ダウンロードしたすべてのバージョンレコードを保存するための.gitディレクトリが含まれています。

新しいプロジェクトディレクトリの名前を自分で定義する場合は、上記のコマンドの最後に新しい名前を指定できます。

git clone git://github.com/schacon/grit.git mygrit

次のコマンドを実行して、ローカルウェアハウスの複製バージョンを作成します。

git clone /path/to/repository 

リモートサーバー上のウェアハウスの場合、コマンドは次のようになります。

git clone username@host:/path/to/repository

3.ワークフロー

あなたのローカルリポジトリはgitのことで維持さ3「木」で構成されています。1つ目は実際のファイルを保持する作業ディレクトリです。2つ目は一時ストレージ領域(インデックス)で、キャッシュ領域のようなもので、変更を一時的に保存します。最後に最後の送信の結果指すHEADです。

次のコマンドを使用して、変更を提案(ステージング領域に追加)できます。

git add <filename>
git add .

これは、基本的なgitワークフローの最初のステップです。次のコマンドを使用して、実際に変更をコミットします。

git commit -m "代码提交信息"

これで、変更はHEAD送信れましたが、まだリモートリポジトリに到達していません。
ワークフロー

4.変更をプッシュします

これで、変更はローカルリポジトリのHEADにあります。次のコマンドを実行して、これらの変更をリモートリポジトリ送信します

git push origin master

masterは、プッシュしたい任意のブランチに置き換えることができます

既存のウェアハウスのクローンを作成しておらず、ウェアハウスをリモートサーバー接続する場合は、次のコマンド使用してウェアハウス追加できます

git remote add origin <server>

したがって、追加したサーバーに変更をプッシュできます。

5.ブランチ

ブランチは、機能開発を絶縁するために使用されます。リポジトリを作成する場合、masterは「デフォルト」のブランチです。他のブランチで開発し、完了後にメインブランチにマージします。
基本的なブランチコマンドを一覧表示します。

git branch

パラメータがない場合、gitブランチはローカルブランチを一覧表示します。

$ git branch
* master

この例の意味は、masterというブランチがあり、そのブランチが現在のブランチであるということです。
git initを実行すると、Gitはデフォルトでマスターブランチを作成します。
ブランチはローカルで完了し、高速です。新しいブランチを作成するには、branchコマンドを使用します。

git branch test

branchコマンドは、ブランチに移動するのではなく、新しいブランチを作成するだけです。そのため、checkoutコマンドを使用してブランチを変更します。

git checkout test

「test」というブランチを作成し、それに切り替えます。

git checkout -b test

他のブランチへの変更は、メインブランチには反映されません。マスターブランチに変更をコミットする場合は、マスターブランチに切り替えてから、マージを使用する必要があります。
メインブランチに戻ります。

git checkout master
git merge test

ブランチを削除する場合は、-dフラグを使用します。新しく作成されたブランチを削除します。

git branch -d test

ブランチをリモートリポジトリにプッシュしない限り、ブランチは他の人には見えません。

git push origin <branch>

ブランチ

6、更新してマージ

するには、最新の改革にローカルリポジトリを更新する移動、実行します。

git pull

作業ディレクトリ内のリモート変更をフェッチしてマージします。
他のブランチを現在のブランチ(マスターなど)にマージするには、次のコマンドを実行します。

 git merge <branch>

どちらの場合も、gitは変更を自動的にマージしようとします。残念ながら、これは毎回成功するとは限らず、競合が発生する可能性があります。このとき、これらのファイルを変更して、これらの競合(競合)を手動でマージする必要があります。変更後、次のコマンドを実行して、それらを正常にマージされたものとしてマークする必要があります。

git add <filename>

変更をマージする前に、次のコマンドで違いをプレビューできます。

git diff <source_branch> <target_branch>

7.ラベル

ソフトウェアリリースのタグを作成することをお勧めします。この概念はすでに存在し、SVNにも存在します。次のコマンドを実行して、1.0.0というラベルを作成できます。

git tag 1.0.0 1b2e1d63ff

1b2e1d63ffは、マークするコミットIDの最初の10文字です。次のコマンドを使用して、送信IDを取得できます。

git log

ポインティングが一意である限り、送信IDの最初の数桁を少なくすることもできます。

8.ローカルの変更を置き換えます

間違えた場合(もちろん、絶対に起こらないことが最善です)、ローカルの変更を次のコマンドで置き換えることができます。

git checkout -- <filename>

このコマンドは、作業ディレクトリ内のファイルをHEAD内の最新のコンテンツに置き換えますステージング領域に追加された変更と新しいファイルは影響を受けません。

ローカルの変更とコミットをすべて破棄する場合は、サーバーの最新のバージョン履歴を取得して、ローカルマスターブランチにその履歴を指定できます

git fetch origin
git reset --hard origin/master

9. Gitリモートウェアハウス(Github)

新しいリモートウェアハウスを追加するには、後で参照できるように単純な名前を指定できます。コマンドの形式は次のとおりです。

git remote add [shortname] [url]

現在のリモートライブラリを表示します。現在構成されているリモートウェアハウスを表示するには、次のコマンドを使用できます。

git remote

インスタンス

$ git remote
origin
$ git remote -v
origin    [email protected]:tianqixin/runoob-git-test.git (fetch)
origin    [email protected]:tianqixin/runoob-git-test.git (push)

実行時に-vパラメータを追加すると、各エイリアスの実際のリンクアドレスも確認できます。
Gitには、リモートリポジトリから更新を抽出するための2つのコマンドがあります。
1.リモートウェアハウスから新しいブランチとデータをダウンロードします。

git fetch

コマンドを実行した後、ブランチへのリモートブランチへのgitmergeを実行する必要があります
2.リモートウェアハウスからデータを抽出し、現在のブランチにマージしてみます。

git merge

このコマンドは、現在のブランチに対してgit merge remotebranchを実行した直後にgitfetchを実行するためのものです。
リモートウェアハウスを構成していて、更新されたデータを抽出したい場合は、最初にgit fetch [alias]を実行して、Gitに持っていないデータを取得するように指示し、次にgit merge [alias] /を実行できます。 [ブランチ]サーバー上の更新を(この時点で誰かがサーバーにプッシュされたと仮定して)現在のブランチにマージします。
新しいブランチとデータをリモートウェアハウスコマンドにプッシュします。

git push [alias] [branch]
git push origin master

リモートリポジトリを削除するには、次のコマンドを使用できます。

git remote rm [别名]

インスタンス

$ git remote -v
origin    [email protected]:tianqixin/runoob-git-test.git (fetch)
origin    [email protected]:tianqixin/runoob-git-test.git (push)

# 添加仓库 origin2
$ git remote add origin2 [email protected]:tianqixin/runoob-git-test.git

$ git remote -v
origin    [email protected]:tianqixin/runoob-git-test.git (fetch)
origin    [email protected]:tianqixin/runoob-git-test.git (push)
origin2    [email protected]:tianqixin/runoob-git-test.git (fetch)
origin2    [email protected]:tianqixin/runoob-git-test.git (push)

# 删除仓库 origin2
$ git remote rm origin2
$ git remote -v
origin    [email protected]:tianqixin/runoob-git-test.git (fetch)
origin    [email protected]:tianqixin/runoob-git-test.git (push)

10.実用的なヒント

組み込みのグラフィカルgit:

gitk

色付きのgit出力:

git config color.ui true

履歴を表示する場合、送信された情報ごとに1行のみが表示されます。

git config format.pretty oneline

ステージング領域にファイルをインタラクティブに追加します。

git add -i

おすすめ

転載: blog.csdn.net/Serena_tz/article/details/113977462