1. ホーム
  2. git

[解決済み] Gitに「git pull -dry-run」オプションはありますか?

2023-04-28 06:39:15

質問

のようなものがあるのでしょうか? git pull --dry-run を使用して、私の作業ツリーを混乱させる前に、どのようにマージされるかを見ることはできますか?

今、私はやっています。

git fetch origin && git merge --no-commit --no-ff

git-pull」のmanページには、それに関連するものは見当たりませんでした。

はっきり言うと、デプロイ用の Ant スクリプトで git pull を実行したときに、ビルドを中止し、デプロイに失敗し、そのディレクトリツリーは以前と同じままにしておく必要があります。 git pull .

どのように解決するのですか?

私はいつも、マージに失敗したときに私を取り戻してくれる Git の固有の能力に頼ってきました。

どのようにマージが行われるかを見積もるために、あなたが行ったように開始することができます。

$ git fetch origin branch  # Fetch changes, but don't merge
$ git diff HEAD..origin/branch # Diff your current head to the fetched commit

... personal judgement of potential merge conflicts ...

$ git merge origin/branch # merge with the fetched commit

計画通りに行かなかった場合、あなたの reflog を見て、リセットして希望の状態に戻してください。

$ git reflog
...
abc987  HEAD@{0}: merge activity
b58aae8 HEAD@{1}: fetch origin/branch
8f3a362 HEAD@{2}: activity before the fetch
...
$ git reset --hard HEAD{2}