1つのコマンドで git add、git commit、および git push
この記事では、1つのコマンドでファイルをリモート リポジトリに追加、コミット、およびプッシュするために使用できる 2つの方法について説明します。 単一のファイルに小さな変更を加える場合でも、変更をリモート リポジトリに公開する 3 段階のプロセスに従う必要があります。
幸いなことに、変更をリモート リポジトリに追加、コミット、およびプッシュするコマンドを作成できます。
1つのコマンドで git add、git commit、および git push
これには 2つの方法があります。
- bash 関数を作成します。
- エイリアスを作成します。
Bash 関数を作成する
ローカルの変更をリモート リポジトリに追加、コミット、およびプッシュする Bash 関数を作成できます。 この関数は、.bashrc
ファイルに保存する必要があります。
.bashrc
ファイルは、端末のセッションの構成を定義する単なるシェル スクリプトです。
このファイルは通常、ホーム ディレクトリにあります。 ホーム ディレクトリは、Git Bash を起動したときに立っているディレクトリです。
.bashrc
ファイルがない場合は、Bash を起動し、以下のコマンドを使用して作成します。
$ touch ~/.bashrc
.gitconfig
ファイルと同様に、.bashrc
は隠しファイルです。 以下のコマンドを実行して、関数を .bashrc
ファイルに追加します。
$ notepad ~/.bashrc
このコマンドはメモ帳でファイルを開き、以下に示す関数を追加できます。
function acp() {
git add .
git commit -m "$1"
git push origin HEAD
}
git commit
の "$1"
により、acp
コマンドの実行時にカスタム コミット メッセージを指定できます。
関数には任意の名前を付けることができます。 ファイルを保存し、以下のコマンドを実行して機能を有効にします。
$ source ~/.bashrc
新しい Git バージョンは --login
で始まることに注意してください。 このような場合、Git は bash_profile
ファイルのみを読み取ります。
このため、Git は .bashrc
ファイルを認識しません。 これを修正するには、以下のコマンドを実行します。
$ if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
Git が .bashrc
ファイルを読み取るようになりました。 以下に示すように、acp
を使用して、リモートへの変更の追加、コミット、およびプッシュを 1つのコマンドで使用できます。
$ acp "Update README.md"
これにより、変更が追加され、コミットされ、リモートにプッシュされます。
注: 関数に割り当てた名前を使用してください。 たとえば、関数に
Lazygit
という名前を付けた場合、次のように実行します。
$ Lazygit "Update README.md"
エイリアスを作成する
以下に示すように、変更をリモート リポジトリに追加、コミット、およびプッシュするエイリアスを作成できます。
$ git config --global alias.lazygit '!f() { git add -A && git commit -m "$@" && git push origin HEAD; }; f'
エイリアスには任意の名前を付けることができます。 git commit
の "$@"
を使用すると、コマンド ラインでエイリアスを使用するときにカスタム コミット メッセージをフィードできることに注意してください。
エイリアスを lazygit
と名付けたので、以下を実行します。
$ git lazygit "Update LICENSE.md"
.bashrc
ファイルに Bash 関数を作成するか、エイリアスを作成することで、1つのコマンドで追加、コミット、プッシュすることができます。 カスタム コミット メッセージを追加するオプションを使用して、両方を作成する方法を見てきました。
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn関連記事 - Git Add
- 1つのコマンドで Git Add と Git Commit
- 1つのファイルを除くすべてのファイルをコミット用に追加
- Git add コマンドを元に戻す
- Git でコミットするフォルダー内のすべてのファイルを追加する
- Git のステージング エリア
関連記事 - Git Push
- Git Push Origin と Git Push Origin Master の違い
- Git プッシュがハングする
- Git プッシュでリモート リポジトリのファイルを強制的に上書きする
- Git リポジトリを以前のコミットに戻す
- Git を使用してリモート リポジトリに最初のプッシュを行う