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

Linuxでの実用的な例を使ってGitコマンドを学ぶ–パート2

前回の記事では、基本的なGitワークフローについて学びました。この記事では、その他のリポジトリアクション、分岐、タグ付けなどの高度な機能に焦点を当てます。以前の記事と同様に、これもGitの実践ガイドです。

その他のリポジトリアクション

名前の変更

名前が示すように、名前変更操作は、トレースされたファイルが変更されたことをGitに指示します。ファイルの名前を変更するには、次のコマンドを実行します:

$ git mv README NEW-README

次に、リポジトリのステータスを確認しましょう:

$ git status -s
R  README -> NEW-README

上記の出力文字R READMEの前に表示されます。これは、ファイルの名前が変更されたことを示します。次の列には、新旧のファイル名が表示されます。

注: リモートリポジトリでこれらの変更を行うには、gitpushコマンドを実行します。

移動

移動操作は、あるディレクトリの場所から別のディレクトリの場所にファイルを移動するために使用されます。ファイルを移動するには、次のコマンドを実行します:

$ mkdir new-dir
$ git mv README new-dir/

この例では、新しいディレクトリを作成し、ファイルをそのディレクトリに移動しました。次に、リポジトリのステータスを確認しましょう:

$ git status -s
R  README -> new-dir/README

上記の出力は、ファイルが新しいディレクトリに移動されたことを示しています。

注: リモートリポジトリでこれらの変更を行うには、gitpushコマンドを実行します。

削除

名前が示すように、削除操作はGitからファイル/ディレクトリを削除します。ファイルを削除するには、次のコマンドを実行します:

$ git rm README

次に、リポジトリのステータスを確認しましょう:

$ git status -s
 D README

上記の出力では、ファイルがリポジトリから削除されたことを示すREADMEの前に文字Dが表示されます。

注: リモートリポジトリでこれらの変更を行うには、gitpushコマンドを実行します。

リセット

この操作により、現在のHEADが指定された状態にリセットされます。 Gitでは、HEADは最新のコミットを指す参照ポインターです。

例を挙げてこれを理解しましょう:

$ touch AUTHORS
$ git add AUTHORS
$ git status -s
A  AUTHORS

上記の例では、AUTHORSファイルを作成し、それをチェンジセットに追加しました。これで、このファイルは次のコミットの一部になります。 GitリセットコマンドはHEAD参照を調整し、チェンジセットからファイルを削除します

$ git reset HEAD AUTHORS

それでは、リポジトリのステータスを確認しましょう:

$ git status -s
?? AUTHORS

予想どおり、上記の出力は、ファイルが変更セットから削除されたことを示しているため、 ?? ファイル名の前に記号が表示されます。

ブランチの操作

バージョン管理システムのブランチは、独立した開発ラインです。他のバージョン管理システムとは異なり、Gitでは分岐は非常に軽量です。このセクションでは、ブランチに関連するさまざまな機能について説明します。

ブランチを作成

新しいブランチを作成するには、次のコマンドを実行します:

$ git branch my-feature-branch

上記のコマンドでは、my-feature-branchはブランチ名です。このコマンドはローカルブランチを作成します。

リモートブランチを作成するには、次のようにgitpushコマンドを実行します。

$ git push origin my-feature-branch

リストブランチ

ブランチを一覧表示するには、引数なしでブランチコマンドを実行します。

$ git branch
* master
  my-feature-branch

たとえば、上記の出力にはローカルブランチが一覧表示されます。アスタリスク記号は現在のブランチを表します。私たちの場合はマスターブランチです。

ローカルブランチとリモートブランチを一覧表示するには、次のコマンドを実行します。

$ git branch -a
* master
  my-feature-branch
  remotes/origin/HEAD -> origin/master
  remotes/origin/master

上記の出力で、赤い色で強調表示されているブランチはリモートブランチです。

ブランチを削除

ローカルブランチを削除するには、次のように-dオプションを使用します。

$ git branch -d my-feature-branch

ブランチmy-feature-branchを削除しました(以前は220bf4dでした)。

リモートブランチを削除するには、次のコマンドを実行します:

$ git push origin :my-feature-branch

gitにリモートブランチを削除するように指示するブランチ名でcolon(:)を使用していることに注意してください

ブランチの切り替え

ブランチを切り替えるには、次のようにcheckoutコマンドを実行します。

$ git checkout my-feature-branch

ブランチ「my-feature-branch」に切り替えました

次に、現在のブランチを確認しましょう:

$ git branch
  master
* my-feature-branch

チェックアウトブランチ

これまで、個別のコマンドを使用して、ブランチを作成して切り替えてきました。ただし、これは次のように1つのコマンドで実現できます。

$ git checkout -b my-feature-branch

新しいブランチ「my-feature-branch」に切り替えました

次に、現在のブランチを確認しましょう:

$ git branch
  master
* my-feature-branch

作業ツリーを復元する

Gitを使用すると、コミットされていない変更を破棄できます。これは、checkoutコマンドを使用して実現できます。例を挙げてこれを理解しましょう。

最初に既存のファイルを変更し、リポジトリのステータスを確認します:

$ echo "Update README" >> README
$ git status -s
 M README

READMEファイルの変更を破棄するには、次のコマンドを実行します。

$ git checkout -- README
$ git status -s

予想どおり、作業ツリーはクリーンであるため、最後のコマンドは出力を表示していません。

ブランチをマージ

名前が示すように、マージ操作は1つのブランチから別のブランチに変更を適用します。このステップバイステップで理解しましょう。

最初に新しいブランチを作成し、このブランチで変更をコミットします:

$ git checkout -b my-feature-branch

新しいブランチ「my-feature-branch」に切り替えました

$ echo "Update README" >> README.md
$ git add README.md
$ git commit -m "Updated README"
[my-feature-branch 42e28aa] Updated README
 1 file changed, 1 insertion(+)

マスターブランチに切り替えて、マスターブランチに変更を適用しましょう

$ git checkout master

ブランチ「マスター」に切り替えました

ブランチは「origin/master」で最新です。

$ git merge my-feature-branch
Updating 220bf4d..42e28aa
Fast-forward
 README.md | 1 +
 1 file changed, 1 insertion(+)

次に、変更がマスターブランチに適用されていることを確認しましょう:

$ git log -1 --oneline
42e28aa (HEAD -> master, my-feature-branch) Updated README

タグの操作

タグは、Git履歴内の特定のコミットへの参照ポインターです。多くの場合、タグは製品のリリースバージョンをマークするために使用されます。このセクションでは、作成、一覧表示、削除などの基本的なタグ操作について説明します

タグを作成

タグの作成はとても簡単です。タグを作成するには、次のコマンドを実行します:

$ git tag my-tag

上記のコマンドは、my-tagという名前のタグを作成します。リモートリポジトリにタグを作成するには、次のようにpushコマンドを実行します。

$ git push origin my-tag

リストタグ

タグを一覧表示するには、次のように引数なしでGitタグコマンドを実行します。

$ git tag
my-tag

タグを削除

タグを削除するには、次のように-d引数を指定してGitタグコマンドを実行します。

$ git tag -d my-tag
Deleted tag 'my-tag' (was 220bf4d)

リモートリポジトリからタグを削除するには、次のコマンドを実行します。

$ git push origin :my-tag

結論

この記事では、いくつかの高度なGit操作について例を挙げて説明しました。このチュートリアルを参照すると、プロジェクトでGitを流暢に使用できます。この記事が気に入ったら、フィードバックやコメントを共有してください。


Linux
  1. 実用的な例でLinuxHexdumpコマンドを使用する方法

  2. Linuxのヘッドコマンドとテールコマンドを例で説明

  3. 実用的な例を含む Linux rsync コマンド

  1. 例を含むwcLinuxコマンド

  2. 例を含む10以上のLinuxVIコマンド

  3. 10 の例を含む最も単純な Linux コマンド

  1. 19Linuxでの一般的なSSHコマンドと例

  2. Linuxコマンドのチートシート:例を使用

  3. LinuxのNetstatコマンド-例を含む28個のコマンド