में किसी शाखा पर किए गए परिवर्तनों को कैसे प्राप्त करें, जब से यह शाखा पर ब्रांच किया गया था, तब से शाखा पर काम करने का सबसे अच्छा तरीका क्या है? मेरे समाधान अब तक है:गिट
git log $(git merge-base HEAD branch)..branch
git-diff के लिए दस्तावेज़ इंगित करता है कि git diff A...B
git diff $(git-merge-base A B) B
के बराबर है। दूसरी तरफ, git-rev-parse के लिए प्रलेखन इंगित करता है कि r1...r2
को r1 r2 --not $(git merge-base --all r1 r2)
के रूप में परिभाषित किया गया है।
ये अलग क्यों हैं? ध्यान दें कि git diff HEAD...branch
मुझे वह अंतर देता है जो मुझे चाहिए, लेकिन संबंधित गिट लॉग कमांड मुझे जो चाहिए उससे ज्यादा देता है।
तस्वीरों में, इस लगता है:
x---y---z---branch / ---a---b---c---d---e---HEAD
मैं एक लॉग युक्त प्रतिबद्ध एक्स, वाई, जेड प्राप्त करना चाहते हैं।
git diff HEAD...branch
इन प्रतिबद्ध- देता है तथापि,
git log HEAD...branch
देता एक्स, वाई, जेड, सी, डी, ई।
आप अपने उद्देश्यों के लिए गलत तरीके से "गिट लॉग" का उपयोग कर रहे हैं जो मैं देख सकता हूं। मैंने नीचे अपना जवाब जोड़ा है। – PlagueHammer