40 以上のリポジトリのそれぞれにコードをコミットまたはプッシュするのを忘れた場合にリマインダーをメールで送信するスクリプトがあります。
2 つのプロジェクトで、複数のリポジトリにプッシュするように「git-push」をセットアップしたこれらの投稿の回答に従いました。
だから私は .git/config ファイルを持っています:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "origin"]
url = https://www.example.com/git/project/
url = git@github.com:username/project.git
[remote "example"]
url = https://www.example.com/git/project/
fetch = +refs/heads/*:refs/remotes/example/*
[remote "github"]
url = git@github.com:username/project.git
fetch = +refs/heads/*:refs/remotes/github/*
これは、git のプッシュ/プルを行う場合にうまく機能します。
私が使用したスクリプトでは:
git status --short
しかし、これはコミットされていない変更のみを示しています...「--short」フラグがなくても、1つのリモートのみで通常表示されるものは表示されません:
Your branch is ahead of 'origin/master' by 1 commit.
次の「diff」コマンドのいずれかを実行しようとしても機能しないようです...最初はうまくいきますが、セットアップされた日時のリモートファイルを覚えているようです。さらに変更を加えて、履歴のそのバージョンと比較します。
git diff --name-status "origin";
git diff --name-status "origin/master";
git diff --name-status "example/master";
git diff --name-status "github/master";
何かご意見は?私はGitにかなり慣れていません。