කැපවීමකින් සියලුම ලිපිගොනු ලැයිස්තුගත කරන්නේ කෙසේද?


2802

gitබාහිර තොරතුරු නොමැතිව හැෂ් (SHA1) විසින් ලබා දී ඇති කැපවීමේ කොටසක් වූ සියලුම ලිපිගොනු මනාව හැඩගස්වා ඇති සරල විධානයක් මම සොයමි .

මම උත්සාහ කර ඇත:

git show a303aa90779efdd2f6b9d90693e2cbbbe4613c1d

එය ලිපිගොනු ලැයිස්තුගත කළද, එක් එක් සඳහා අනවශ්‍ය වෙනස තොරතුරු ද එයට ඇතුළත් ය.

gitමට අවශ්‍ය ලැයිස්තුව පමණක් සපයන තවත් විධානයක් තිබේද , එවිට එය git showප්‍රතිදානයෙන් විග්‍රහ කිරීමෙන් වැළකී සිටිය හැකිද?


43
මම මෙතැනට ආවේ ටිකක් වෙනස් දෙයක් සොයමින්. මට අවශ්‍ය සියලුම ලිපිගොනු කට්ටලයක් සඳහා නවීකරණය කර git log --until 2013-05-21 --pretty="short" --name-onlyහොඳ බලපෑමක් සහිතව භාවිතා කිරීමයි.
සීමිත පව් කමාව

4
සියලු පෙර සිට වෙනස්කම් ලබා ගැනීමට මෙම විධානය භාවිතා කර nඅනාචාරයේ දක්වා master:git diff-tree --name-status -r @{3} master
ako

3
git diff --name-only master- ප්‍රධාන ශාඛාවට සාපේක්ෂව වර්තමාන ශාඛාවේ වෙනස් කළ සියලුම ගොනු ලැයිස්තුගත කිරීම.
නොම් මනෝස්

Answers:


3779

කැමති මාර්ගය (එය ජලනල විධානයක් බැවින්; ක්‍රමලේඛනය කිරීමට අදහස් කරන):

$ git diff-tree --no-commit-id --name-only -r bd61ad98
index.html
javascript/application.js
javascript/ie6.js

තවත් ක්‍රමයක් (ස්ක්‍රිප්ට් සඳහා අඩු කැමැත්තක් දක්වයි, මන්ද එය පෝසිලේන් විධානයකි; පරිශීලකයා මුහුණ දෙන ලෙස අදහස් කෙරේ)

$ git show --pretty="" --name-only bd61ad98    
index.html
javascript/application.js
javascript/ie6.js

  • මෙම --no-commit-idඑම සිදු හැඳුනුම්පත ප්රතිදානය මර්දනය.
  • මෙම --prettyතර්කය මුල දී cruft වළක්වා ගැනීමට හිස් ආකෘතිය string දක්වයි.
  • මෙම --name-onlyතර්කය සංදර්ශන (ස්තූතියි හෑන්ක්) පීඩාවට පත්ව ඇති බව ගොනුව නම් පමණි. --name-statusඑක් එක් ගොනුවට සිදුවූයේ කුමක්දැයි බැලීමට අවශ්‍ය නම් ඒ වෙනුවට භාවිතා කරන්න ( D eleted, M odified, A dded)
  • මෙම -rතර්කය උප ගස් බවට recurse කිරීමට

25
diff-treeමූල කැපවීම දෙස බලන විට එය ක්‍රියාත්මක නොවන බව සැලකිල්ලට ගත යුතුය .
jbranchaud

327
--name-onlyවිකල්පය ආදේශ කිරීමෙන් --name-statusවඩාත් පැහැදිලි සාරාංශයක් ලැබෙනු ඇත.
කර්ට් ෂොං

20
මූල කැපවීම මත එය ක්‍රියාත්මක වීමට ඔබට අවශ්‍ය නම්, --root ධජය භාවිතා කරන්න. මෑන් පිටුවෙන්: "--root නියම කළ විට ආරම්භක කැපවීම විශාල නිර්මාණ සිදුවීමක් ලෙස පෙන්වනු ඇත. මෙය NULL ගසට එරෙහි වෙනසකට සමාන වේ."
ක්‍රිස්

24
git log --name-only -n 1 <hash>අවසාන කැපවීම වනුයේ:git log --name-only -n 1 HEAD~1..HEAD
කර්ට්

10
පළමු ක්‍රමය "වඩාත් කැමති" වන්නේ මන්දැයි යමෙකු කල්පනා කරන්නේ නම් (එය මා මෙන්), එය නැවත ඩ්‍රයිස්ට්ගේ අදහස් දැක්වීමට යයි; git show"පෝසිලේන්" (පරිශීලකයා මුහුණ දෙන ලෙස අදහස් කෙරේ) සහ git diff-treeඑය "ජලනල" (ක්‍රමලේඛිකව භාවිතා කිරීමට අදහස් කරයි, උදා: ස්ක්‍රිප්ට් වලින්). කලින් භාවිතා කළ අතුරු මුහුණත කාලයාගේ ඇවෑමෙන් වෙනස් විය හැකිය (එබැවින් git නඩත්තු කරන්නන් --name-onlyඒවා පහත වැටෙනු ඇතැයි මම නොසිතුවද) භාවිතා කළ හැකි හේතු නිසා, නමුත් පසුකාලීන අතුරු මුහුණත අනුකූලතා හේතූන් මත හැකි තරම් ස්ථායීව තබා ගනී.
killscreen

238

වෙනස් කළ ලිපිගොනු ලැයිස්තුවක් ලබා ගැනීමට ඔබට අවශ්‍ය නම්:

git diff-tree --no-commit-id --name-only -r <commit-ish>

ඔබට සියලු ලිපිගොනු ලැයිස්තුවක් ලබා ගැනීමට අවශ්‍ය නම්, ඔබට භාවිතා කළ හැකිය

git ls-tree --name-only -r <commit-ish>

1
- නම පමණක් ඇති ls-tree 1.6.4.4 හෝ 1.6.3.3 මත ක්‍රියා කරන බවක් නොපෙනේ. ඔබ සිතන්නේ මෙය දෝෂයක් කියාද?
krosenvold

git ls-tree --name-only HEAD(<commit-ish> පරාමිතිය අවශ්‍යයි ; මෙම උදාහරණයේ එය HEAD) git අනුවාදය 1.6.4.3 සමඟ මා වෙනුවෙන් ක්‍රියා කරයි
ජකුබ් නාරබ්ස්කි

2
පරාමිති අනුපිළිවෙල මෙහි වැදගත් බව එයින් පෙනේ. ඔබගේ ලිපියේ ඇති එක ක්‍රියා නොකරයි, ඔබේ ප්‍රතිචාරයේ ඇති තැනැත්තා ක්‍රියා කරයි - අවම වශයෙන් ඔබ ඔබගේ ලිපිය යාවත්කාලීන කරන තුරු;)
krosenvold

5
--no-commit-idSHA1 මුද්‍රණය නොකිරීමට සමත් වන්න:git diff-tree --no-commit-id --name-only -r <commit-ish>
ජෝන් මෙලර්

3
ODCoDEmanX: ඔබට එකතු කිරීම -r/ -tවිකල්පය මග හැරුනේ නැහැ නේද? වෙනස් කළ හා එකතු කරන ලද ගොනු දෙකම වෙනස ගස හසුරුවන බැවිනි. ඔබට සියලු නව (එකතු කළ) ලිපිගොනු ලැයිස්තුගත කිරීමට අවශ්‍ය නම්, භාවිතා කරන්නgit diff-tree -r --name-only --no-commit-id --diff-filter=A <commit-ish>
ජකුබ් නාරබ්ස්කි

226

මම හිතන්නේ මේ gitkසඳහා එය අවශ්‍ය නොවන බවයි. එවැනි අවස්ථාවක, උත්සාහ කරන්න git show --name-only <sha>.


36
මට අවශ්‍ය වූ බොහෝ අවස්ථාවන්හි --name-only පමණක් තිබේ; එමනිසා, කෙටිම විසඳුම ඉහළට ඔසවා තබන්න (සහ උත්සාහක දිනුම් 1 කින් මට මතක ඇති එකම ක්‍රමය).
එරික් එස්

25
නැත්නම් --name-status.
නීල් ට්‍රැෆ්ට්

CLI git වලට සැබවින්ම කැමති අයෙකු ලෙස, gitkඇත්ත වශයෙන්ම ලිපිගොනු සමාලෝචනය කිරීමට සහ වෙනස පවතින ගොනුව ප්‍රදර්ශනය කිරීමට හොඳ ක්‍රමයකි. උදා.
එලියා ලින්

හෝgit show --stat <sha>
යාය

192

ප්‍රදර්ශන විධානය සමඟ මම පෞද්ගලිකව --stat සහ --oneline සංයෝජනය භාවිතා කරමි :

git show --stat --oneline HEAD
git show --stat --oneline b24f5fb
git show --stat --oneline HEAD^^..HEAD

එකතු කිරීම / ඉවත් කිරීමේ සංඛ්‍යාලේඛන ඔබට අවශ්‍ය නැතිනම් / අවශ්‍ය නම්, ඔබට --stat --name-only සමඟ ආදේශ කළ හැකිය

git show --name-only --oneline HEAD
git show --name-only --oneline b24f5fb
git show --name-only --oneline HEAD^^..HEAD

4
මේක නියමයි! එය මූලික වශයෙන් ඔබට ගිටුබ් පෙන්වන ගොනු සාරාංශයක් ලබා දෙයි. ස්තූතියි.
trisweb

ඉතා කදිමයි. අන්වර්ථයක් නිර්වචනය කිරීම සඳහා:, alias gits='git show --stat --oneline'පසුව gitsනවතම වෙනස්කම් (HEAD හි) gits b24f5fbපෙන්වයි, ඕනෑම සංශෝධනයක වෙනස්කම් පෙන්වීමට භාවිතා කළ හැකිය.
බ්‍රෙන්ට් ෆවුස්ට්

5
කෙනෙකුට git අන්වර්ථයක් ද නිර්මාණය කළ හැකිය ... උදා git config --global alias.changes 'show --stat --oneline'. එවිට ඔබට ටයිප් කළ හැකිය git changes(විකල්ප කැපවීමක් සහිතව) සහ ඉහත පළමු උදාහරණ වලින් ප්‍රතිදානය ලබා ගන්න.
ලින්ඩ්ස්

වින්ඩෝස් සඳහා Git සඳහා ද්විත්ව මිල ගණන් අවශ්‍ය වේ:git config --global alias.changes "show --stat --oneline"
ඇල්කෙමිස්ට්මාට්

3
හොඳයි. පිළිගත් පිළිතුර මෙන් නොව, git showගබඩා කර ඇති වෙනස්කම් සමාලෝචනය කිරීම සඳහා ද ක්‍රියා කරයි: උදාgit show --stat --oneline stash@{1}
ජෙෆ් වෝඩ්

83

ඔබටත් කළ හැකිය

git log --name-only

තවද ඔබට විවිධ කොමිස් හරහා සැරිසැරීමට, පණිවිඩ යැවීමට සහ වෙනස් කළ ලිපිගොනු වලට පිවිසිය හැකිය.

ඔබගේ විමසුම නැවත ලබා ගැනීමට q ටයිප් කරන්න.


ස්තූතියි, එය උපකාරී වේ. BTW: git show 5944ad2a8b5 --name-onlyනිශ්චිත
බැඳීමක

68

මෑතකදී මට වෙනස් කළ ලිපිගොනු දෙකක් අතර ලැයිස්තු ගත කිරීමට අවශ්‍ය විය. එබැවින් මම මෙම (ද * nix specific) විධානය භාවිතා කළෙමි

git show --pretty="format:" --name-only START_COMMIT..END_COMMIT | sort | uniq

යාවත්කාලීන කිරීම : නැතහොත් ඊතන් පහත පෙන්වා ඇති පරිදි

git diff --name-only START_COMMIT..END_COMMIT

භාවිතා --name-statusකිරීමේදී එක් එක් ගොනුවට යාබදව ඇති වෙනස (එකතු කරන ලද, වෙනස් කරන ලද, මකා දැමූ) ඇතුළත් වේ

git diff --name-status START_COMMIT..END_COMMIT

4
ඔබ භාවිතා කරන්නේ git diff --name-status START_COMMIT..END_COMMITනම් ඔබට පසුපස යාම අවශ්‍ය නොවේ |sort | uniq.
ඊතන්

ඉහත අදහස් දැක්වීම නිවැරදි කිරීම:git diff --name-only START_COMMIT..END_COMMIT
ඊතන්

මම සොයමින් සිටියේ මෙයයි. මම කොහොමද එය භාවිතා: git diff --name-only START_COMMIT..END_COMMIT | grep -v -e '**.png' -e '**.xml'. මට අවශ්‍ය වූයේ පීඑන්ජී සහ එක්ස්එම්එල් පිරිසැලසුම් දහස් ගණනක් එකතු කළ විශාල PR සඳහා පමණි.
AutonomousApps

63

සරලම ආකෘතිය:

git show --stat (hash)

එය මතක තබා ගැනීම පහසු වන අතර එය ඔබට අවශ්‍ය සියලු තොරතුරු ලබා දෙනු ඇත.

ඔබට සැබවින්ම අවශ්‍ය වන්නේ ලිපිගොනු වල නම් පමණි --name-only.

git show --stat --name-only (hash)


2
--name-only හි තවමත් කර්තෘ, දිනය සහ බැඳීම් පණිවිඩය වැනි තොරතුරු අඩංගු ශීර්ෂ රේඛා කිහිපයක් ඇතුළත් වේ.
elysium කා දැමීය

ඒකාබද්ධ කිරීම සඳහා වැඩ කරන බව මට පෙනී ගියේ එකක් පමණි
ඇලෙක්ස් පුන්නන්

47

මම බොහෝ විට වෙනස් කළ අන්වර්ථය භාවිතා කරමි . එය සැකසීමට:

git config --global alias.changed 'show --pretty="format:" --name-only'

එවිට:

git changed (lists files modified in last commit)   
git changed bAda55 (lists files modified in this commit)
git changed bAda55..ff0021 (lists files modified between those commits)

ප්‍රයෝජනවත් විය හැකි සමාන විධානයන්:

git log --name-status --oneline (very similar, but shows what actually happened M/C/D)
git show --name-only

40

භාවිත

git log --name-status

මෙය ඔබට කැපවීමේ හැඳුනුම්පත, පණිවිඩය, ගොනු වෙනස් කිරීම සහ එය වෙනස් කරන ලද, නිර්මාණය කරන ලද, එකතු කළ හෝ මකා දැමූවාද යන්න පෙන්වනු ඇත. සර්වබලධාරී විධානයක් තරමක්.


38

සම්මත git diff විධානය භාවිතා කිරීම (ස්ක්‍රිප්ටින් සඳහාද හොඳය):

git diff --name-only <sha>^ <sha>

වෙනස් කළ ලිපිගොනු වල තත්වයද ඔබට අවශ්‍ය නම්:

git diff --name-status <sha>^ <sha>

ඒකාබද්ධ කිරීමේ කොමිස් සමඟ මෙය හොඳින් ක්‍රියාත්මක වේ.


26

නම සඳහා මෙම විධානය උත්සාහ කර පේළි ගණන වෙනස් කරන්න

git show --stat <commit-hash>

ගොනු නම් පමණක් පෙන්වන්න

git show --stat --name-only  <commit-hash>

අන්තිම කැපවීමේ හැෂ් ලබා ගැනීම සඳහා මෙම විධානය උත්සාහ කරන්න

git log -1

ප්‍රදර්ශන ලිපිගොනු නම සහ ගොනු තත්ත්වය වෙනස් කිරීම, නිර්මාණය කිරීම හෝ මකා දැමීම සමඟ අවසන් කැපවීම

 git log -1 --oneline --name-status <commit-hash>

හෝ සියල්ලටම

git log

වඩාත් දියුණු git ලොග් තොරතුරු සඳහා මෙම ලිපිය කියවන්න

https://devhints.io/git-log-format

https://devhints.io/git-log


1
An ඩැන්ෆෙයාර් "මාරාන්තික: හඳුනා නොගත් තර්කය: --names-only" සිට 2.20.1.windows.1
user2864740


20

හරි, විශේෂිත කැපවීමකින් සියලුම ලිපිගොනු පෙන්වීමට ක්‍රම කිහිපයක් තිබේ ...

තොරතුරු අඩු කිරීමට සහ සිදු කළ ලිපිගොනු වල නම් පමණක් පෙන්වීමට , ඔබට සරලව එකතු කළ හැකිය --name-onlyහෝ --name-statusසලකුණු කළ හැකිය ..., මෙම කොඩි මඟින් ඔබට අවශ්‍ය පරිදි පෙර කොමිස් වලට වඩා වෙනස් ගොනු නාම පෙන්වයි ...

ඒ නිසා ඔබට පහත දැක්වෙන දේ වැනි කැපවීම් හැෂ් දෙකක් සමඟින් git diffඅනුගමනය කළ හැකිය :--name-only<sha0> <sha1>

git diff --name-only 5f12f15 kag9f02 

මෙම තත්වය තුළ ගත යුතු සියලු පියවර පෙන්වීමට මම පහත රූපය නිර්මාණය කරමි:

git diff --name-only 5f12f15 kag9f02


යොමු දෙකක් (ඔබ ඒවාට හැෂ් ලෙස නම් කරන්නේ ඇයි)?
hakre

15

වෙනස් කිරීම් දෙකක් අතර නවීකරණය කරන ලද ගොනු ලැයිස්තුවක් ලබා ගැනීමට මම මෙය භාවිතා කරමි:

git diff --name-status <SHA1> <SHA2> | cut -f2

ඔව් නමුත් තත්ත්වය හොඳින් ඉතා ප්රයෝජනවත් වේ (isntance සඳහා, ඔබ වගේ දෙයක් සමග මකා ඇති බව එම හැර සියළුම ගොනු ප්රදර්ශනය කිරීමට අයිතිය සුරකියි කිරීමට ඔබට අවශ්ය විය හැකියgit diff --name-status .. | grep ^[^D] | cut -f2
පියරේ Adrien Buisson


14

ද තිබෙන git whatchangedවඩා අඩු මට්ටමේ වන,git log

NAME
       git-whatchanged - Show logs with difference each commit introduces

එය යටින් ඇති ගොනු ලැයිස්තුවක් සමඟ ඒවායේ මාතයන් සමඟ බැඳීම් සාරාංශය ප්‍රතිදානය කරන අතර ( A), මකාදැමූ ( D) හෝ වෙනස් කරන ලද ( M);

$ git whatchanged f31a441398fb7834fde24c5b0c2974182a431363

මෙවැනි දෙයක් ලබා දෙයි:

commit f31a441398fb7834fde24c5b0c2974182a431363
Author: xx <xx@xx.nl>
Date:   Tue Sep 29 17:23:22 2015 +0200

    added fb skd and XLForm

:000000 100644 0000000... 90a20d7... A  Pods/Bolts/Bolts/Common/BFCancellationToken.h
:000000 100644 0000000... b5006d0... A  Pods/Bolts/Bolts/Common/BFCancellationToken.m
:000000 100644 0000000... 3e7b711... A  Pods/Bolts/Bolts/Common/BFCancellationTokenRegistration.h
:000000 100644 0000000... 9c8a7ae... A  Pods/Bolts/Bolts/Common/BFCancellationTokenRegistration.m
:000000 100644 0000000... bd6e7a1... A  Pods/Bolts/Bolts/Common/BFCancellationTokenSource.h
:000000 100644 0000000... 947f725... A  Pods/Bolts/Bolts/Common/BFCancellationTokenSource.m
:000000 100644 0000000... cf7dcdf... A  Pods/Bolts/Bolts/Common/BFDefines.h
:000000 100644 0000000... 02af9ba... A  Pods/Bolts/Bolts/Common/BFExecutor.h
:000000 100644 0000000... 292e27c... A  Pods/Bolts/Bolts/Common/BFExecutor.m
:000000 100644 0000000... 827071d... A  Pods/Bolts/Bolts/Common/BFTask.h
...

මෙම පිළිතුර "බාහිර තොරතුරු නොමැතිව" සැබවින්ම නොගැලපෙන බව මම දනිමි, නමුත් මම තවමත් සිතන්නේ මෙම ලැයිස්තුව ගොනු නාම වලට වඩා ප්‍රයෝජනවත් වනු ඇති බවයි.


තවද, whatchangedපරාමිතීන් සැපයීම වෙනුවට එක් විධානයක් පමණි .
ගේබ්‍රියලියස්

11

මම මෙයට කැමතියි:

git diff --name-status <SHA1> <SHA1>^

මම හිතන්නේ මෙය A& D(එකතු කිරීම සහ මකා දැමීම) ගොනු තත්වයන් පසුපසට ලබා ගනී, මන්දයත් එය වෙනත් ආකාරයකින් නොව, පෙර කළ කැපවීමට ඇති නිශ්චිත බැඳීමට වඩා වෙනස පෙන්වන බැවිනි. එය විය යුතුය git diff --name-status <SHA1>^ <SHA1>.
ට්‍රෝයි ගිසි

11

අන්තිම කැපවීමේදී ගොනු ලැයිස්තුව වෙනස් කිරීමට ඔබට අවශ්‍ය නම් සරල එක් පේළි විධානයක් භාවිතා කරන්න:

git diff HEAD~1 --name-only

8

කැපවීමකින් වෙනස් වූ ගොනු ලැයිස්තුගත කරන්න:

git diff --name-only SHA1^ SHA1

මෙය ලොග් පණිවිඩ, අමතර නව රේඛා හෝ වෙනත් අවුල් ජාලයක් නොපෙන්වයි. මෙය වර්තමාන කැපවීම පමණක් නොව ඕනෑම කැපවීමක් සඳහා ක්‍රියා කරයි. වග බලා ගන්න එය නෑ ඇයි කොට නැත තරමක් තවමත් සඳහන් කර, ඒ නිසා මම එය එකතු කරනවා.


මේ දෙක එක git diff SHA1^ SHA1හා සමානයි: සහ git show SHA1.
ව්ලැඩිමීර් වුකනාක්

1
commandmrW එම විධානයන් සමාන ප්‍රතිදානයක් නිපදවන අතර කැපවීමේ git showපණිවිඩය ද පෙන්වයි
නිව්ටන්ක්ස්

8

ලොගය පෙන්වන්න.

COMMIT හිස් ("") හෝ ෂා -1 හෝ ෂා -1 කෙටි කළ හැකිය.

git log COMMIT -1 --name-only

මෙය ලිපිගොනු පමණක් ලැයිස්තුගත කරනු ඇත, වැඩිදුර සැකසීමට ඉතා ප්‍රයෝජනවත් වේ.

git log COMMIT -1 --name-only --pretty=format:"" | grep "[^\s]"

8

මේ සඳහා පරිපූර්ණ පිළිතුරක් හමු විය:

git show --name-status --oneline <commit-hash>

ඒ නිසා මට දැනගන්න පුළුවන්

which files were just modified M

Which files were newly added , A

Which files were deleted , D

5

" git show --stat" (ස්තූතියි රයන්) සහ sed විධානයන් කිහිපයක එකතුවක් ඔබ වෙනුවෙන් දත්ත අඩු කළ යුතුය:

git show --stat <SHA1> | sed -n "/ [\w]\*|/p" | sed "s/|.\*$//"

එමඟින් නවීකරණය කරන ලද ගොනු ලැයිස්තුවක් පමණක් නිපදවනු ඇත.


5

ගොනු ලැයිස්තුවක් ලෙස බැලීමට සරල උපක්‍රමයක් ඇත :, හැෂ් පසු එකතු කරන්න .

git show 9d3a52c474:

එවිට ඔබට සරඹ කළ හැකිය,

git show 9d3a52c474:someDir/someOtherDir

ඔබ ගොනුවකට පහර දුන්නොත් ඔබට ගොනුවේ අමු අනුවාදය ලැබෙනු ඇත; සමහර විට ඔබට අවශ්‍ය වන්නේ ඔබ හොඳ යොමු කිරීමක් හෝ යතුරු කේතයක් පමණක් සොයන්නේ නම් (වෙනස මගින් සියල්ල අවුල් විය හැක),

git show 9d3a52c474:someDir/someOtherDir/somefile

මෙම ක්‍රමයේ ඇති අඩුපාඩුව නම් එය පහසුවෙන් ගොනු ගසක් නොපෙන්වයි.



2

ඒකාබද්ධ කිරීමේ දී වෙනස් කළ ගොනු ලැයිස්තුවක් ලබා ගැනීමට මම මෙය භාවිතා කරමි

λ git log -m -1 --name-only --pretty="format:"
configs/anotherconfig.xml
configs/configsInRepo.xml

හෝ

λ git log -m -1 --name-status --pretty="format:"
A       configs/anotherconfig.xml
M       configs/configsInRepo.xml

2

ඔබ oh-my-zsh සහ git ප්ලගිනය භාවිතා කරන්නේ නම්, glg කෙටිමඟ ප්‍රයෝජනවත් වේ.


3
ඔබ ... ඔබේ පිළිතුරෙන් සියලුම කේත ඉවත් කළාද? මෙය කිසිසේත්ම මා යොමු කළ දෙයක් නොවේ. OP විසින් ඉල්ලා ඇති පරිදි ප්‍රති output ල ප්‍රතිදානයේ බාහිර තොරතුරු නොමැත , ඔබේ පිළිතුරෙහි නොවේ! ඔබට තවමත් බාහිර තොරතුරු රාශියක් ලබා දෙන පිළිතුරක් ඇත. නමුත් දැන්, එය විස්තර කර ඇත්තේ අඩුවෙන් නිවැරදිව ය. OP ට අවශ්‍ය වූයේ ලිපිගොනු ලැයිස්තුවක් ඉවත් කිරීමට ය. glgප්‍රතිදානයන් මොනවාදැයි බලන්න : තවත් බොහෝ දේ. ව්යාකූලත්වයට කණගාටුයි.
රොමේන් වලරි

0

පමනිගොනු ලැයිස්තුව (පණිවිඩයක් පවා නොයෙදේ):

git show --name-only --pretty=format:

උදා: ඔබේ සංස්කාරකයේ වෙනස් කළ සියලුම ගොනු විවෘත කරන්න:

"$EDITOR" $(git show --name-only --pretty=format:)

-2

මම මගේ අන්වර්ථයේ සාරාංශයක් බෙදාගනු ඇතැයි සිතුවෙමි .. එසේම 'zsh' භාවිතා කිරීම git it chroma යතුරු සියල්ලම මනාව යතුරු කර ඇති අතර විධාන විමසුම වෙනස් කිරීමෙන් ශාඛාව සෑම විටම අවශ්‍ය බව ඔබට කියමි.

SVN වෙතින් ආවරණය වන අය සඳහා ඔබට මෙය ප්‍රයෝජනවත් වනු ඇත: (මෙය විවිධ නූල් වලින් අදහස් එකතුවකි, මම පිටපත් / පේස්ට් භාවිතා කරන්නේ කෙසේදැයි දැන ගැනීමේ ගෞරවය පමණක් ලබා ගනිමි)

.gitconfig:
        ls = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)%an%Creset' --abbrev-commit --date=relative --name-status

>>git ls
* 99f21a6 - (HEAD -> swift) New Files from xcode 7 (11 hours ago) Jim Zucker| 
| A     icds.xcodeproj/project.pbxproj
| A     icds.xcodeproj/project.xcworkspace/contents.xcworkspacedata
| A     icds/AppDelegate.m
| A     icds/Assets.xcassets/AppIcon.appiconset/Contents.json

* e0a1bb6 - Move everything to old (11 hours ago) Jim Zucker| 
| D     Classes/AppInfoViewControler.h
| D     Classes/AppInfoViewControler.m
| D     Classes/CurveInstrument.h


.gitconfig: 
       lt = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)%an%Creset' --abbrev-commit --date=relative

>>git lt
* 99f21a6 - (HEAD -> swift) New Files from xcode 7 (11 hours ago) Jim Zucker
* e0a1bb6 - Move everything to old (11 hours ago) Jim Zucker
* 778bda6 - Cleanup for new project (11 hours ago) Jim Zucker
* 7373b5e - clean up files from old version (11 hours ago) Jim Zucker
* 14a8d53 - (tag: 1.x, origin/swift, origin/master, master) Initial Commit (16 hours ago) Jim Zucker


.gitconfig
lt = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)%an%Creset' --abbrev-commit --date=relative

>> git lt

commit 99f21a61de832bad7b2bdb74066a08cac3d0bf3c
Author: Jim Zucker <jim@stratengllc.com>
Date:   Tue Dec 1 22:23:10 2015 -0800

    New Files from xcode 7

A       icds.xcodeproj/project.pbxproj
A       icds.xcodeproj/project.xcworkspace/contents.xcworkspacedata


commit e0a1bb6b59ed6a4f9147e894d7f7fe00283fce8d
Author: Jim Zucker <jim@stratengllc.com>
Date:   Tue Dec 1 22:17:00 2015 -0800

    Move everything to old

D       Classes/AppInfoViewControler.h
D       Classes/AppInfoViewControler.m
D       Classes/CurveInstrument.h
D       Classes/CurveInstrument.m

-3

මෙය ක්‍රියාත්මක විය යුතුය:

git status

මෙය වේදිකාගත නොකළ දේ සහ වේදිකාගත කර ඇති දේ පෙන්වනු ඇත.


7
ප්‍රශ්නය වන්නේ කලින් බැඳී සිටි බැඳීමක් තුළ ලිපිගොනු ලැයිස්තුව ලබා ගැනීම මිස කැපවීමට බැඳී සිටීම නොවේ.
රූප්
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.