git 查看修改哪些檔案 === ## 列出兩點的差異清單 https://qiita.com/yuku_t/items/4f039e5e8557cf1d90a1 ``` # 變動檔案 git diff-tree -r --no-commit-id --name-status HEAD^ HEAD # 過濾特定變動(A=Added, C=Copied, M=Modified, R=Renamed, T=Changed) git diff-tree -r --no-commit-id --name-status --diff-filter=ACMRT HEAD^ HEAD ``` <br><br><br> ## banch file 一覧 ``` git ls-tree --name-only -r INIT ``` ```ps11 $InitList = git ls-tree --name-only -r INIT $List=Get-Content .\diff-list.txt $InitList |Where-Object { $a=$_ $List|ForEach-Object{$_ -contains $a} } ``` ## リリスするとき ``` git diff --numstat INIT0 > diff_steps.txt git diffstat INIT0 > diff_status2.txt git archive -o archive.zip HEAD $(git diff --name-only HEAD INIT0) ``` ``` git diff --numstat INIT > diff_steps.txt git diffstat INIT > diff_status2.txt git archive -o archive.zip HEAD $(git diff --name-only HEAD INIT) ``` ## ファイルのリスト https://blog.csdn.net/wmsjlihuan/article/details/79542615 ``` git log --name-status 每次修改的文件列表, 显示状态 git log --name-only 每次修改的文件列表 git log --stat 每次修改的文件列表, 及文件修改的统计 git whatchanged 每次修改的文件列表 git whatchanged --stat 每次修改的文件列表, 及文件修改的统计 git show 显示最后一次的文件改变的具体内容 ``` https://blog.csdn.net/Hreticent/article/details/85113459 ``` git diff hash1 hash2 --stat git diff master --stat git diff master --stat-width=128 git diff master --stat-name-width=128 --stat-graph-width=16 git diff master --name-only git s --short | grep 'M ' | sed 's/^...//' archive -o update.zip HEAD $(git s --short | grep 'M ' | sed 's/^...//') ``` ## 輸出變動檔案 * https://blog.miniasp.com/post/2014/04/01/Git-Export-Only-Added-Modified-Files * https://tosbourn.com/using-git-to-create-an-archive-of-changed-files/ 在 Windows 平台使用 Git for Windows 匯出變更檔案 (透過 Batch 指令) 要列出最近一個版本的檔案異動清單,可以執行以下指令: ``` # 查看變動的檔案 git diff-tree -r --no-commit-id --name-only --diff-filter=M HEAD git diff --name-only HEAD^ ## 打包變動的檔案 git archive -o update.zip HEAD $(git diff --name-only HEAD^) ``` 其中 --diff-filter=ACMRT 所代表的意思份別是: * A = Added * C = Copied * M = Modified * R = Renamed * T = Changed ## ファイルの比較 ```sh # 改行コードや空白を無視する git diff -w #空行を無視する git diff --ignore-blank-lines # 変更点の前後に表示される行数を変える git diff -U0 # 単語単位で比較する git diff --color-words git diff master -w --ignore-blank-lines -U0 --color-words ``` https://it-ojisan.tokyo/diff-only-list/ ```sh # 削除された差分のみ抽出 diff -u in.txt in2.txt | grep ^- | grep -v ^--- diff -u in.txt in2.txt | grep ^- | grep -v ^--- | sed s/^-// # diff -u in.txt in2.txt | grep ^+ | grep -v ^+++ diff -u in.txt in2.txt | grep ^+ | grep -v ^+++ | sed s/^+// ``` ## git 顯示diff差異行數 ``` git diff --unified=0 git diff -U0 git diff --numstat INIT0 您还可以将其设置为该存储库的配置选项: git config diff.context 0 要为任何存储库全局设置: git config --global diff.context 0 ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up