Answers:
විශේෂිත COMMIT
හැෂ් සඳහා වෙනස බැලීමට :
git diff COMMIT~ COMMIT
එම COMMIT
මුතුන්මිත්තන් සහ අතර ඇති වෙනස ඔබට පෙන්වනු ඇත COMMIT
. විධානය පිළිබඳ විස්තර සහ අංකනය සහ එහි මිතුරන් පිළිබඳ gitrevisions සඳහා git diff සඳහා man පිටු බලන්න . ~
විකල්පයක් ලෙස, git show COMMIT
ඉතා සමාන දෙයක් කරනු ඇත. ( බැඳීමේ දත්ත, එහි වෙනස ඇතුළුව - නමුත් ඒකාබද්ධ කිරීම සඳහා නොවේ.) Git show manpage බලන්න .
^
මෙම තොම්සන් සහ Bourne ෂෙල් වෙඩි (සඳහා පර්යාය පදයක් උපුටා කිරීමට අවශ්යතා |
ඇති) සහ rc
(බැධී ක්රියාකරු) සහ එහි ව්යුත්පන්න සහ zsh
extendedglob සමග (සක්රීය not
ක්රියාකරු globbing)
HEAD^
බැඳීමකට බහු දෙමව්පියන් සිටී නම් පළමු දෙමව්පියන් අදහස් කරන බව සලකන්න (එනම් ඒකාබද්ධ කිරීමේ බැඳීම).
git diff COMMIT~ COMMIT
මට වැඩ කරයි, කැරට් වෙනුවට ටිල්ඩ් බලන්න. මම වින්ඩෝස් 10 හි 2.6.1.windows.1 git අනුවාදය ධාවනය කරමි.
" එහි මවුපියන් සමඟ ඇති ගැටුමේ වෙනස සඳහා කෙටිමං? " හි සඳහන් කර ඇති පරිදි, ඔබට මෙයද භාවිතා කළ හැකිය git diff
:
git diff COMMIT^!
හෝ
git diff-tree -p COMMIT
Git show සමඟ, ඔබට (වෙනස මත පමණක් අවධානය යොමු කිරීම සඳහා) කිරීමට අවශ්ය වනු ඇත:
git show --color --pretty=format:%b $COMMIT
මෙම COMMIT
පරාමිතිය වේ සිදු-සාක්ෂි ලැබී :
ඒ වස්තුව සිදු හෝ වස්තුව ඇත්තෙන් වෙනසට භාජනය වූ සිදු වස්තුවකට dereferenced කළ හැකි බව. පහත දැක්වෙන්නේ බැඳීම්-වස්තූන් ය: බැඳීම් වස්තුවක්, කැපවූ වස්තුවකට යොමු වන ටැග් වස්තුවක් , කැපවූ වස්තුවකට යොමු වන ටැග් වස්තුවකට යොමු කරන ටැග් වස්තුව යනාදිය.
බැඳීමක් සඳහන් කිරීම සඳහා "විශේෂිත සංශෝධන" බලන්න .
" Git හි ගස-ඊෂ් යන්නෙහි තේරුම කුමක්ද? "
ඔබට මෙම පහසු ක්රමය උත්සාහ කළ හැකිය:
git show <COMMIT>
git show
නවතම කැපවීමේදී සිදුකරන ලද වෙනස්කම් පෙන්වයි.
සමාන වේ git show HEAD
.
git show HEAD~1
ඔබව 1 කැපවීම ආපසු ගෙන යයි.
පළමුව බැඳීම් හැඳුනුම්පත භාවිතා කරන්න,
git log #to list all
හෝ
git log -p -1 #last one commit id
කැපවීමේ හැඳුනුම්පත පිටපත් කරන්න.
නිශ්චිත බැඳීමක වෙනස්කම් ලැයිස්තුගත කිරීම සඳහා දැන් අපි ක්රම දෙකක් භාවිතා කරමු,
ක්රමය 1:
git diff commit_id^! #commit id something like this 1c6a6000asad012
ක්රමය 2:
git show commit_id
For example: git show 1c6a600a
^!
තේරුම කුමක්ද ??
git show <commit_sha>
මෙම කැපවීමේ ඇති දේ මෙය ඔබට පෙන්වයි. කැපවීම් ෂා දෙකක් අතර ඉඩක් තැබීමෙන් ඔබට එය පරාසයක් කළ හැකි යැයි මම සිතමි.
git show <beginning_sha> <ending_sha>
ඔබේ විශේෂාංග ල logs ු-සටහන් සියල්ලම පේළියකින් යුක්ත වන නිසා ඔබ බොහෝ විට ප්රතිප්රහාර එල්ල කරන්නේ නම් එය බෙහෙවින් උපකාරී වේ.
Git-diff (1) සඳහා මෑන් පිටුවෙන් :
git diff [options] [<commit>] [--] [<path>…]
git diff [options] --cached [<commit>] [--] [<path>…]
git diff [options] <commit> <commit> [--] [<path>…]
git diff [options] <blob> <blob>
git diff [options] [--no-index] [--] <path> <path>
මැද 3 වන එක භාවිතා කරන්න:
git diff [options] <parent-commit> <commit>
උදාහරණ කොටසේ , පහළින් එකම මිනිසා පිටුවෙන් :
$ git diff HEAD^ HEAD <3>
අන්තිම බැඳීමට හා අවසාන බැඳීමට පෙර අනුවාදය සංසන්දනය කරන්න.
එය ටිකක් අවුල් සහගත ලෙස වචන වලින් පිළිගෙන ඇති බව පිළිගත යුතුය
නවතම කැපවීම ඊට පෙර ඇති කැපවීම සමඟ සසඳන්න.
git diff HEAD HEAD^
.
පහත දැක්වෙන්නේ එම කාර්යය කරන බව ය; ඒකාබද්ධ කිරීමකින් ගෙන ආ දේ පෙන්වීමට මම එය භාවිතා කරමි.
git whatchanged -m -n 1 -p <SHA-1 hash of merge commit>
git log
කරයිද? ( stackoverflow.com/a/18585297/6309 නිසා )
තවත් හැකියාවක්:
git log -p COMMIT -1
git diff HEAD HEAD^1
දෙමව්පියන්ගේ කැපවීම සමඟ ඇති වෙනස බැලීමට ඔබට භාවිතා කළ හැකිය.
ඔබට අවශ්ය වන්නේ ගොනු ලැයිස්තුව පමණක් නම්, --stat
විකල්පය එක් කරන්න .
diff
වන විධානය: මම සිදු සිට ලබා ගැනීමට ගොනුව තුල වෙනස් කිරීමට අවශ්ය වන දේ HEAD
සිදු කිරීමට HEAD^1
?
git difftool COMMIT^ <commit hash>
ඔබ ඔබේ ඩිෆ්ටූල් වින්යාස කර ඇත්නම් ද එය කළ හැකිය.
කෙසේ මෙතන බලන්න difftool මාන නැත්නම් ශ්රමික පිටුව මෙතන
git diff-tree --no-commit-id --name-only -r <commit hash>
දීමනාවක් ලබා දීමේ හැෂ් එකක කුමන ගොනු වෙනස් කර ඇත්දැයි බැලීමට ඔබට භාවිතා කළ හැකිය
කැපවීමෙන් කර්තෘ සහ වේලාව බැලීමට git show COMMIT
. එහි ප්රති result ලය මේ වගේ දෙයක් වනු ඇත:
commit 13414df70354678b1b9304ebe4b6d204810f867e
Merge: a2a2894 3a1ba8f
Author: You <you@you.com>
Date: Fri Jul 24 17:46:42 2015 -0700
Merge remote-tracking branch 'origin/your-feature'
කුමන ගොනු වෙනස් කර ඇත්දැයි බැලීමට ඔබට අවශ්ය නම්, ඉහත ඒකාබද්ධ කිරීමේ රේඛාවේ අගයන් සමඟ පහත සඳහන් දෑ ක්රියාත්මක කරන්න git diff --stat a2a2894 3a1ba8f
.
ඔබට සැබෑ වෙනස දැකීමට අවශ්ය නම් ධාවනය කරන්න git --stat a2a2894 3a1ba8f
git --stat a2a2894 3a1ba8f
". මම හිතන්නේ ඔබ අදහස් කළේ git diff a2a2894 3a1ba8f
හෝ නැතිනම් unknown option: --stat
.
සම්පූර්ණ වෙනස්කම් පරීක්ෂා කිරීම සඳහා:
git diff <commit_Id_1> <commit_Id_2>
වෙනස් කළ / එකතු කළ / මකා දැමූ ගොනු පමණක් පරීක්ෂා කිරීම සඳහා:
git diff <commit_Id_1> <commit_Id_2> --name-only
සටහන : අතර වෙනසකින් තොරව වෙනස පරීක්ෂා කිරීම සඳහා, ඔබ කැපවීමේ හැඳුනුම්පත් දැමිය යුතු නැත.
මම වින්ඩෝස් 10 හි Git අනුවාදය 2.6.1.windows.1 ධාවනය කරමි, එබැවින් මට නෙවික්ගේ පිළිතුරට සුළු වෙනස් කිරීමක් අවශ්ය විය (කැරට් වෙනුවට ටිල්ඩ්):
git diff COMMIT~ COMMIT
තවත් විකල්පයක් වන්නේ කරත්තය උපුටා දැක්වීම:
git diff "COMMIT^" COMMIT
මෙම විධානය මඟින් ඔබට Git මාපිය බැඳීම්-හැෂ් ලැබෙනු ඇත:
git log -n 2 <commit-hash>
එයට පසු git diff-tool <commit-hash> <parent-commit-hash>
උදාහරණයක්:
bonnie@bonnie ~/ $ git log -n 2 7f65b9a9d3820525766fcba285b3c678e889fe3
commit 7f65b9a9d3820525766fcba285b3c678e889fe3b
Author: souparno <souparno.majumder@gmail.com>
Date: Mon Jul 25 13:17:07 2016 +0530
CSS changed to maintain the aspect ratio of the channel logos and to fit them properly.
commit c3a61f17e14e2b80cf64b172a45f1b4826ee291f
Author: souparno <souparno.majumder@gmail.com>
Date: Mon Jul 25 11:28:09 2016 +0530
The ratio of the height to width of the channel images are maintained.
මෙයින් පසු
git difftool 7f65b9a9d3820525766fcba285b3c678e889fe3b c3a61f17e14e2b80cf64b172a45f1b4826ee291f
චිත්රක දර්ශනයක මූලාශ්රය වෙනස් කිරීම පරීක්ෂා කිරීමේදී,
$gitk (Mention your commit id here)
උදාහරණයක් වශයෙන්:
$gitk HEAD~1