4

プル後、git は最後のプル以降に変更されたファイルを一覧表示します。

問題は、ローカル リポジトリでさらに作業を行った後で、このリストを取得する方法です。

例えば

$ git checkout feature/default2
$ git pull
Updating 5420c70..b8eec49
Fast-forward
 application/configs/application.ini                                 |   1 +
 application/modules/product/forms/Search.php                        |   3 ++
 public/themes/default/bootstrap/buttons.less                        |  25 -----------
 public/themes/default/css/cmspanel.css                              | 234 ++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------
 public/themes/default/css/products.css                              |  57 ++++++++++++++++++++----
 public/themes/default/css/style.css                                 | 270 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------
 public/themes/default/gfx/icons/menu-drop-dark.png                  | Bin 0 -> 160 bytes
 public/themes/default/gfx/icons/more.png                            | Bin 0 -> 120 bytes
 public/themes/default/layouts/scripts/footer.phtml                  |  26 ++++++++++-
 public/themes/default/layouts/scripts/gallery.phtml                 |   2 +
 public/themes/default/layouts/scripts/home.phtml                    |   2 +
 public/themes/default/layouts/scripts/layout.phtml                  |   2 +
 public/themes/default/layouts/scripts/products.phtml                |  22 ++++-----
 public/themes/default/less/cmspanel.less                            |  26 +++++++++++
 public/themes/default/less/nav.less                                 |   4 +-
 public/themes/default/less/products.less                            |  61 +++++++++++++++++++++----
 public/themes/default/less/style.less                               |  59 ++++++++++++++++++++++---
 public/themes/default/less/widgets.less                             |  37 +++++++++++++++-
 public/themes/default/modules/cms/scripts/widgets/random.phtml      |   6 +--
 public/themes/default/modules/default/scripts/widgets/submenu.phtml |   2 +-
 public/themes/default/modules/product/scripts/index/view.phtml      |  44 +++++++++---------
 public/themes/default/modules/product/scripts/widgets/search.phtml  |  16 +++++++
 22 files changed, 584 insertions(+), 315 deletions(-)
 create mode 100644 public/themes/default/gfx/icons/menu-drop-dark.png
 create mode 100644 public/themes/default/gfx/icons/more.png

5420c70引っ張る前の状態です。
その社を決定する方法は5420c70

私が正しければ、ORIG_HEAD は最後のプル (いくつかの変更を導入したプルではなく、任意のプル) の前の状態です。

git checkout SOME_HEAD私は私のために行うのが好きな魔法のエイリアスを探してgit checkout 5420c70います。

git review最新ではなかった最後のプル以降に変更されたすべてのファイルを比較するエイリアスを設定しようとしています。

基本的なケースでは、次のようなものが機能します。

git pull
# lists some chanes file
git diff --name-status ORIG_HEAD..
# diffs them

しかし、私はこのようなものを探しています:

git pull
# lists some chanes file
git pull
# up-to-date, no changes
git diff --name-status ORIG_HEAD..
# diffs the files since the last pull which was not up-to-date
4

4 に答える 4

4

reflog を確認できると思いHEAD@{1}ますdiff --name-only ..HEAD@{1}

別のオプションとして、今後の変更を確認し、変更を作業コピーに取り込むことができgit fetchます。git log -p ..@{upstream}git merge FETCH_HEAD

于 2013-07-08T09:53:02.797 に答える
3

reflog を調べたところ、これが私が探していたものであることがわかりました。

git reflog --oneline | grep -m 1 "pull " | cut -d' ' -f1)

showこれは、以前に成功したプルの 1 sha だけを返します。これは、などlogで使用できます。diff

于 2013-07-08T10:49:08.123 に答える
0
git log -n 1 --pretty=format:%H
于 2016-07-13T08:20:00.873 に答える
0

あなたが何を望んでいるのか理解できたらgit pull、あなたが必要とするコマンドではありません。git fetch

それが完了したら、あなたはできる

git diff HEAD...origin 通常の 2 つのドットの代わりに 3 つのドットが必要であることに注意してください

これにより、すべての変更の単一の差分が得られます。満足したら、通常の方法でそれらをマージしたり、特定のものだけを選択するためgit mergeに使用したりできますgit cherry-pick

于 2013-07-08T10:07:00.730 に答える