केवल विशिष्ट शाखा के लिए कमिट प्राप्त करने के लिए गेट लॉग


214

मैं उन सभी कमिटों को सूचीबद्ध करना चाहता हूं जो एक विशिष्ट शाखा का हिस्सा हैं।

निम्नलिखित के साथ, यह शाखा से सभी कमिटों को सूचीबद्ध करता है, लेकिन माता-पिता (गुरु) से भी

git log mybranch

मुझे जो दूसरा विकल्प मिला, वह था, गुरु द्वारा प्राप्त होने वाले कमिट्स को बाहर करना और मुझे जो मैं चाहता हूं वह देता हूं, लेकिन मैं अन्य शाखाओं के नामों को जानने की आवश्यकता से बचना चाहूंगा।

git log mybranch --not master

मैं उपयोग करने की कोशिश कर रहा था git for-each-ref, लेकिन यह माइब्रेन को भी सूचीबद्ध कर रहा है , इसलिए वास्तव में यह सभी को बाहर कर रहा है:

git log mybranch --not $(git for-each-ref --format '^%(refname:short)' refs/heads/)

अपडेट करें:

मैं एक नए विकल्प का परीक्षण कर रहा हूं जो मुझे कुछ समय पहले मिला था, और अब तक लगता है कि यह वही हो सकता है जो मैं देख रहा था:

git log --walk-reflogs mybranch

अपडेट (2013-02-13T15: 08):

--Walk-reflogs विकल्प अच्छा है, लेकिन मैंने जांच की कि रिफ्लक्स (डिफ़ॉल्ट 90 दिन, gc.reflogExpire ) के लिए एक समाप्ति है ।

मुझे लगता है कि मुझे वह उत्तर मिला जिसकी मुझे तलाश थी:

git log mybranch --not $(git for-each-ref --format='%(refname)' refs/heads/ | grep -v "refs/heads/mybranch")

मैं अभी उपलब्ध शाखाओं की सूची से वर्तमान शाखा को हटा रहा हूं और उस सूची का उपयोग लॉग से बाहर करने के लिए कर रहा हूं। इस तरह मुझे केवल वे कमिट मिलते हैं जो केवल mybranch तक ही पहुँचते हैं



पहले से ही उस सवाल को भी देखा, लेकिन वही नहीं
डिमर्क

2
क्या आप निश्चित हैं कि आप क्या चाहते हैं? मुझे लक्ष्य को ध्यान में रखना बेहतर लगता है: "मेरी शाखा में ऐसा क्या है जो अपस्ट्रीम में नहीं है", या "मेरी शाखा में ऐसा क्या है जो मास्टर में नहीं है"। इसके अलावा, प्रिटिंग के समय गित तेज होती है, यह अधिक महंगी होने वाली है क्योंकि आपके पास अधिक शाखाएं हैं। मेरे पास एक स्क्रिप्ट है जिसका मैं उपयोग करता हूं जिसे मैं bzr के "लापता" कमांड के बाद "गिट मिसिंग" कहता हूं। आप इसे यहाँ पा सकते हैं: github.com/jszakmeister/etc/blob/master/git-addons/git-missing
जॉन स्ज़कमेस्टर

1
मैं वास्तव में एक के बाद प्राप्त हुक के लिए इस की जरूरत है, तो "मास्टर" हमेशा शाखा होना नहीं होते बाहर करने के लिए
dimirc

हां, StarPinkER द्वारा उल्लिखित डुप्लिकेट ने मेरे लिए अच्छा काम किया: git log $ (git मर्ज-बेस HEAD शाखा) .. शाखा
charo

जवाबों:


165

यह ऐसा लगता है जैसे आपको उपयोग करना चाहिए cherry:

git cherry -v develop mybranch

यह उन सभी कमिटों को दिखाएगा जो mybranch के भीतर सम्‍मिलित हैं , लेकिन विकसित नहीं हैं । यदि आप अंतिम विकल्प ( mybranch ) को छोड़ देते हैं , तो यह इसके बजाय वर्तमान शाखा की तुलना करेगा।

जैसा कि VonC ने बताया है, आप हमेशा अपनी शाखा की तुलना किसी अन्य शाखा से करते हैं, इसलिए अपनी शाखाओं को जानें और उसके बाद तुलना करने के लिए कौन सा चुनें।


4
यह वही है जो मुझे चाहिए था, लेकिन ऐसा लगता है कि इसके लिए एक अधिक सहज आदेश (हां, यहां तक ​​कि गिट की दुनिया में भी) होना चाहिए।
सेठ

12
आप git cherry -v masterअपनी वर्तमान शाखा की तुलना मास्टर शाखा से भी कर सकते हैं ।
पिथिकोस

2
Git cherry का उपयोग करने में खतरा यह है कि कमिट्स का मिलान तभी किया जाता है जब उनकी फाइल शाखाओं के बीच समान हो। यदि किसी प्रकार का विलय किया गया था जो एक शाखा और दूसरे के बीच के अंतर को अलग कर देगा, तो गिट चेरी उन्हें अलग-अलग तरीकों से देखता है।
बेन

यह बस मुझे देता है fatal: Unknown commit mybranch
मैट अर्नाल्ड

1
@ मैटर्नॉल्ड आपको अपने "रेपो" पर मौजूद "डेवलप" और "मायब्रंच" टेक्स्ट को अपने रेपो पर स्माइल करना होगा
Smilie

40

लेकिन मैं अन्य शाखाओं के नाम जानने की आवश्यकता से बचना चाहूंगा।

मुझे नहीं लगता कि यह संभव है: Git में एक शाखा हमेशा एक दूसरे पर या कम से कम किसी अन्य प्रतिबद्ध पर आधारित होती है, जैसा कि " git diff में पर्याप्त नहीं दिखाता है ":

यहां छवि विवरण दर्ज करें

सही कमिट दिखाने के लिए आपको अपने लॉग के लिए एक संदर्भ बिंदु चाहिए।

जैसा कि " GIT - मैं कहां से शाखा में आया था " में बताया गया है :

शाखाएँ एक DAG में कुछ निश्चित आवागमन की ओर संकेत करती हैं

यदि git log master..mybranchएक उत्तर है, तो भी , यह अभी भी बहुत सारे कमिट दिखाएगा, यदि mybranchयह आधारित है myotherbranch, तो खुद पर आधारित है master

उस संदर्भ (अपनी शाखा की उत्पत्ति) का पता लगाने के लिए, आप केवल उसी तरीके से संपर्क कर सकते हैं और देख सकते हैं कि वे किस शाखा में हैं:


26

मुझे अंततः वही करने का तरीका मिला जो ओपी चाहता था। यह उतना ही सरल है:

git log --graph [branchname]

कमांड सभी कमिट्स को प्रदर्शित करेगा जो कि ग्राफ के प्रारूप में प्रदान की गई शाखा से उपलब्ध हैं। लेकिन, आप आसानी से कमिट ग्राफ पर उस शाखा के सभी कमिट्स को देख सकते हैं, *जो कमिट लाइन में पहला कैरेक्टर है।

उदाहरण के लिए, आइए git log --graph masterनीचे दिए गए केकफिट गिटहब रेपो के अंश को देखें:

D:\Web Folder\cakephp>git log --graph master
*   commit 8314c2ff833280bbc7102cb6d4fcf62240cd3ac4
|\  Merge: c3f45e8 0459a35
| | Author: José Lorenzo Rodríguez <lorenzo@users.noreply.github.com>
| | Date:   Tue Aug 30 08:01:59 2016 +0200
| |
| |     Merge pull request #9367 from cakephp/fewer-allocations
| |
| |     Do fewer allocations for simple default values.
| |
| * commit 0459a35689fec80bd8dca41e31d244a126d9e15e
| | Author: Mark Story <mark@mark-story.com>
| | Date:   Mon Aug 29 22:21:16 2016 -0400
| |
| |     The action should only be defaulted when there are no patterns
| |
| |     Only default the action name when there is no default & no pattern
| |     defined.
| |
| * commit 80c123b9dbd1c1b3301ec1270adc6c07824aeb5c
| | Author: Mark Story <mark@mark-story.com>
| | Date:   Sun Aug 28 22:35:20 2016 -0400
| |
| |     Do fewer allocations for simple default values.
| |
| |     Don't allocate arrays when we are only assigning a single array key
| |     value.
| |
* |   commit c3f45e811e4b49fe27624b57c3eb8f4721a4323b
|\ \  Merge: 10e5734 43178fd
| |/  Author: Mark Story <mark@mark-story.com>
|/|   Date:   Mon Aug 29 22:15:30 2016 -0400
| |
| |       Merge pull request #9322 from cakephp/add-email-assertions
| |
| |       Add email assertions trait
| |
| * commit 43178fd55d7ef9a42706279fa275bb783063cf34
| | Author: Jad Bitar <jadbitar@mac.com>
| | Date:   Mon Aug 29 17:43:29 2016 -0400
| |
| |     Fix `@since` in new files docblocks
| |

आप देख सकते हैं, केवल करता 8314c2ff833280bbc7102cb6d4fcf62240cd3ac4है और c3f45e811e4b49fe27624b57c3eb8f4721a4323bहै *में किया जा रहा पहला वर्ण लाइनों के लिए प्रतिबद्ध। वे कमिट मास्टर शाखा से हैं जबकि अन्य चार कुछ अन्य शाखाओं से हैं।


11

निम्नलिखित शेल कमांड को वह करना चाहिए जो आप चाहते हैं:

git log --all --not $(git rev-list --no-walk --exclude=refs/heads/mybranch --all)

चेतावनियां

यदि आपने mybranchजाँच कर ली है, तो उपरोक्त कमांड काम नहीं करेगा। ऐसा इसलिए है क्योंकि कमिट्स mybranchद्वारा भी पहुंच योग्य हैं HEAD, इसलिए Git कमिट को अद्वितीय नहीं मानता है mybranchmybranchजाँच होने पर इसे प्राप्त करने के लिए , आपको इसके लिए एक अतिरिक्त जोड़ना होगा HEAD:

git log --all --not $(git rev-list --no-walk \
    --exclude=refs/heads/mybranch \
    --exclude=HEAD \
    --all)

हालाँकि, आपको तब तक बाहर नहीं करना चाहिए HEADजब तक कि mybranchबाहर की जाँच कर ली जाए , अन्यथा आपको ऐसे जोखिम दिखाने का जोखिम होता है जो अनन्य नहीं हैं mybranch

इसी तरह, यदि आपके पास एक दूरस्थ शाखा है जिसका नाम origin/mybranchस्थानीय mybranchशाखा से मेल खाता है , तो आपको इसे बाहर करना होगा:

git log --all --not $(git rev-list --no-walk \
    --exclude=refs/heads/mybranch \
    --exclude=refs/remotes/origin/mybranch \
    --all)

और यदि दूरस्थ शाखा दूरस्थ रिपॉजिटरी (आमतौर पर केवल सच के लिए origin/master) के लिए डिफ़ॉल्ट शाखा है , तो आपको भी बाहर करना होगा origin/HEAD:

git log --all --not $(git rev-list --no-walk \
    --exclude=refs/heads/mybranch \
    --exclude=refs/remotes/origin/mybranch \
    --exclude=refs/remotes/origin/HEAD \
    --all)

यदि आपके पास शाखा की जाँच की गई है, और एक दूरस्थ शाखा है, और दूरस्थ शाखा दूरस्थ रिपॉजिटरी के लिए डिफ़ॉल्ट है, तो आप एक बहुत को छोड़कर समाप्त करते हैं:

git log --all --not $(git rev-list --no-walk \
    --exclude=refs/heads/mybranch \
    --exclude=HEAD
    --exclude=refs/remotes/origin/mybranch \
    --exclude=refs/remotes/origin/HEAD \
    --all)

व्याख्या

git rev-listआदेश हुए निम्न-स्तर (पाइपलाइन) आदेश दिए गए संशोधन चलता है और SHA1 पहचानकर्ता का सामना करना पड़ा उदासीनता है। git logइसे सिर्फ़ इसके बराबर समझें, यह केवल SHA1 दिखाता है- कोई लॉग संदेश, कोई लेखक का नाम, कोई टाइमस्टैम्प, कोई भी "फैंसी" सामान नहीं।

--no-walkविकल्प के रूप में नाम का तात्पर्य, रोकता git rev-listवंश श्रृंखला चलने से। इसलिए यदि आप टाइप git rev-list --no-walk mybranchकरते हैं तो यह केवल एक SHA1 पहचानकर्ता को प्रिंट करेगा: mybranchशाखा के टिप कमेंट का पहचानकर्ता ।

--exclude=refs/heads/mybranch --allतर्क बता git rev-listके अलावा प्रत्येक संदर्भ से शुरू करने के लिए refs/heads/mybranch

इसलिए, जब आप दौड़ते हैं git rev-list --no-walk --exclude=refs/heads/mybranch --all, तो Git सिवाय प्रत्येक रेफरी के टिप कमेंट के SHA1 पहचानकर्ता को प्रिंट करता है refs/heads/mybranch। ये कमिट और उनके पूर्वज आपके द्वारा किए गए कमिट हैं कोई दिलचस्पी नहीं है - ये ऐसे कमिट्स हैं जिन्हें आप नहीं देखना चाहते हैं।

अन्य प्रतिबद्ध हैं जिन्हें आप, देखना तो हम के उत्पादन में एकत्र करना चाहते हैं git rev-list --no-walk --exclude=refs/heads/mybranch --allऔर Git बता सब कुछ, लेकिन उन करता और अपने पूर्वजों को दिखाने के लिए।

--no-walkतर्क बड़े खजाने के लिए आवश्यक है (और छोटे खजाने के लिए एक अनुकूलन है): बिना यह, Git मुद्रित करने के लिए है, और खोल इकट्ठा करने के लिए होगा (और स्मृति में स्टोर) कई और अधिक आवश्यकता से पहचानकर्ता के लिए प्रतिबद्ध। एक बड़े भंडार के साथ, एकत्र किए गए कमिट की संख्या शेल की कमांड-लाइन तर्क सीमा को आसानी से पार कर सकती है।

गित बग?

मुझे काम करने के लिए निम्नलिखित की उम्मीद होगी:

git log --all --not --exclude=refs/heads/mybranch --all

लेकिन ऐसा नहीं है। मैं अनुमान लगा रहा हूं कि यह गिट में एक बग है, लेकिन शायद यह जानबूझकर है।


अच्छी व्याख्या। +1
VONC

5
मैं यहाँ जानना चाहता हूँ कि मर्क्यूरियल कैसे करना है hg log -b <branch>। मुझे समझ नहीं आता कि लोग क्यों कहते हैं कि अमित्र है। / s
weberc2

मुझे नहीं पता कि git log --all --not --exclude=refs/heads/mybranch --allवह काम क्यों नहीं git log refs/heads/mybranch --not --exclude=refs/heads/mybranch --allकरता है, लेकिन HEAD और उत्पत्ति को छोड़कर एक ही चेतावनी के साथ करता है।
बेन सी।

8

तेजी से उत्तर:

git log $(git merge-base master b2)..HEAD

हम कहते हैं:

  1. कि आपके पास एक मास्टर शाखा है

  2. कुछ कमिट करें

  3. आपने b2 नाम से एक शाखा बनाई

  4. करो git log -n1; प्रतिबद्ध आईडी बी 2 और मास्टर के बीच विलय का आधार है

  5. B2 में कुछ कमिट करें

  6. git log बी 2 और मास्टर के अपने लॉग इतिहास दिखाएगा

  7. यदि आप अवधारणा से परिचित नहीं हैं, तो कमिट रेंज का उपयोग करें, मैं आपको इसे Google या स्टैक ओवरफ्लो में आमंत्रित करता हूं,

    अपने वास्तविक संदर्भ के लिए, आप उदाहरण के लिए कर सकते हैं

    git log commitID_FOO..comitID_BAR
    

    ".." लॉग कमांड के लिए रेंज ऑपरेटर है।

    इसका मतलब है, एक सरल रूप में, मुझे सभी लॉग कमिट_फिड से अधिक हाल के हैं ...

  8. बिंदु # 4 को देखें, मर्ज बेस

    तो: git log COMMITID_mergeBASE..HEADआपको अंतर दिखाएगा

  9. Git आपके लिए इस तरह मर्ज बेस को पुनः प्राप्त कर सकता है

    git merge-base b2 master
    
  10. अंत में आप कर सकते हैं:

    git log $(git merge-base master b2)..HEAD
    

4

आप कुछ इस तरह की कोशिश कर सकते हैं:

#!/bin/bash

all_but()
{
    target="$(git rev-parse $1)"
    echo "$target --not"
    git for-each-ref --shell --format="ref=%(refname)" refs/heads | \
    while read entry
    do
        eval "$entry"

        test "$ref" != "$target" && echo "$ref"
    done
}

git log $(all_but $1)

या, Git उपयोगकर्ता के मैनुअल में नुस्खा से उधार लेना :

#!/bin/bash
git log $1 --not $( git show-ref --heads | cut -d' ' -f2 | grep -v "^$1" )

+1। मैं अपने जवाब में लिख रहा था कि अपनी शाखा की उत्पत्ति का पता लगाने के लिए आपको कमिट करने की आवश्यकता है, और आपको लगता है कि आपने ऐसा किया है।
VonC

क्या आपने लॉग --walk-reflogs का उपयोग किया है? मैं इस विकल्प के बारे में पढ़ रहा हूं और मुझे अब तक के परिणामों की आवश्यकता है, (अभी भी परीक्षण कर रहा
हूं

@dimirc Reflogs सभी एक साथ एक अलग जानवर हैं। यह समय के साथ शाखा बिंदुओं को दर्ज करता है, आम तौर पर वसूली के उद्देश्य के लिए। मुझे यकीन नहीं है कि आप अपने पोस्ट-प्राप्त हुक में क्या कर रहे हैं, लेकिन शायद अगर आपने इसे समझाया, तो लोग आपकी समस्या का अधिक समझदार उत्तर प्रदान कर सकते हैं।
जॉन एसज़ाकमिस्टर

मुझे बस एक पुश पर सभी प्रतिबद्ध संदेशों को पार्स / चेक करने की आवश्यकता है। जिस मामले को मैं कवर करना चाहता हूं, वह यह है कि अगर कोई मास्टर पर कई कमिट्स लगाता है और कई कमिट्स के साथ एक नई ब्रांच भी बनाता है। पोस्ट-प्राप्त हुक को रेफरी / शाखाओं दोनों के लिए किए गए परिवर्तनों की जांच करने की आवश्यकता है, उदाहरण के लिए मास्टर और न्यूब्रांच, मुझे दो बार पार्सिंग करने वाले संदेशों से बचने के लिए नई शाखा की सीमाओं को जानने की आवश्यकता है, क्योंकि मास्टर से कमिट किया जा सकता है।
मंद

1
ठीक है। फिर मुझे लगता है कि उपर्युक्त दृष्टिकोण मैं वास्तव में उल्लिखित हूं जो आप चाहते हैं। रिफ्लोग के साथ, कुछ समय के बाद प्रविष्टियां बंद होने जा रही हैं, और मुझे लगता है कि इससे आपको कुछ सिरदर्द होंगे। आप का उपयोग कर git show-ref --tagsभी देखना चाहते हो सकता है।
जॉन स्ज़ेकमिस्टर

4
git rev-list --exclude=master --branches --no-walk

हर शाखा के सुझावों को सूचीबद्ध करेगा जो नहीं है master

git rev-list master --not $(git rev-list --exclude=master --branches --no-walk)

हर प्रतिबद्ध को masterइतिहास में सूचीबद्ध करेगा जो किसी अन्य शाखा के इतिहास में नहीं है।

सीक्वेंसिंग उन विकल्पों के लिए महत्वपूर्ण है जो प्रतिबद्ध चयन के लिए फ़िल्टर पाइपलाइन स्थापित करते हैं, इसलिए --branchesइसे लागू करने वाले किसी भी अपवर्जन पैटर्न का पालन करना होगा, और --no-walkफ़िल्टर का पालन करना होगा जो रीव-सूची की आपूर्ति करता है, जिसे चलना नहीं चाहिए।


4

यह करंट ब्रांच पर कमिट्स को आउटपुट करेगा। यदि कोई तर्क पारित किया जाता है, तो यह सिर्फ हैश का आउटपुट देता है।

git_show_all_commits_only_on_this_branch

#!/bin/bash
function show_help()
{
  ME=$(basename $0)
  IT=$(cat <<EOF
  
  usage: $ME {NEWER_BRANCH} {OLDER_BRANCH} {VERBOSE}
  
  Compares 2 different branches, and lists the commits found only 
  in the first branch (newest branch). 

  e.g. 
  
  $ME         -> default. compares current branch to master
  $ME B1      -> compares branch B1 to master
  $ME B1 B2   -> compares branch B1 to B2
  $ME B1 B2 V -> compares branch B1 to B2, and displays commit messages
  
  )
  echo "$IT"
  exit
}

if [ "$1" == "help" ]
then
  show_help
fi

# Show commit msgs if any arg passed for arg 3
if [ "$3" ]
then
  OPT="-v"
fi

# get branch names
OLDER_BRANCH=${2:-"master"}
if [ -z "$1" ]
then
  NEWER_BRANCH=$(git rev-parse --abbrev-ref HEAD)
else
  NEWER_BRANCH=$1
fi

if [ "$NEWER_BRANCH" == "$OLDER_BRANCH" ]
then
  echo "  Please supply 2 different branches to compare!"
  show_help
fi

OUT=$(\git cherry $OPT $OLDER_BRANCH $NEWER_BRANCH)

if [ -z "$OUT" ]
then
  echo "No differences found. The branches $NEWER_BRANCH and $OLDER_BRANCH are in sync."
  exit;
fi

if [ "$OPT" == "-v" ]
then
  echo "$OUT"
else
  echo "$OUT" | awk '{print $2}'
fi

1
इसने मेरे लिए लगभग 100 अप्रासंगिक लॉग संदेशों का उत्पादन किया।
Arlie Stephens

अरे @ArlieStephens - मैंने इसकी कोशिश की और यह अभी भी मेरे लिए काम कर रहा है? मैंने अभी ऊपर दी गई मदद और अधिक त्रुटि संदेश जोड़े हैं। मुझे बताएं कि यह कैसे जाता है!
ब्रैड पार्क्स

दिलचस्प। आपके पास अभी जैसा कोड है, उसे देखते हुए, मुझे लगता है कि यह उतना ही सरल हो सकता है जितना मूल यह माना जाता है कि जिस शाखा की मुझे परवाह है, वह मास्टर की है। वर्तमान कोड के साथ, मैं मूल शाखा को स्पष्ट रूप से निर्दिष्ट कर सकता था। (IIRC, मेरी देव शाखा एक रिलीज शाखा से आई, मास्टर नहीं।)
एरली स्टीफेंस

@ArlieStephens - हाँ, मुझे नहीं लगता कि मैंने कोई कार्यक्षमता बदली है .... मैंने इसे एक बार अपडेट किया और डॉक्स को कुछ स्थानीय परीक्षण के बाद थोड़ा और सटीक बनाया ... और इससे पहले "वर्बोज़" विकल्प जोड़ा। लेकिन मैं इसे डॉक्टर
ब्रैड पार्क्स

3

मैं निम्नलिखित आदेशों का उपयोग कर रहा हूं:

git shortlog --no-merges --graph --abbrev-commit master..<mybranch>

या

git log --no-merges --graph --oneline --decorate master..<mybranch>

1

मुझे यह तरीका अपेक्षाकृत आसान लगा।

शाखा और से चेकआउट

  1. Daud

    git rev-list --simplify-by-decoration -2 HEAD
    

यह सिर्फ दो SHAs प्रदान करेगा:

1) शाखा की अंतिम प्रतिबद्धता [C1]

2) और शाखा की पहली प्रतिबद्धता के लिए माता-पिता [C2]

  1. अब दौड़ो

    git log --decorate --pretty=oneline --reverse --name-status <C2>..<C1>
    

यहाँ C1 और C2 दो तार हैं जब आप पहली कमांड चलाते हैं। इन मानों को बिना <> दूसरी कमांड में रखें।

यह शाखा के भीतर फाइल बदलने के इतिहास की सूची देगा।


यदि आप प्रश्न की पहली तीन पंक्तियों को पढ़ते हैं, तो आप देखेंगे कि लेखक इस सटीक कमांड को सूचीबद्ध करता है और बताता है कि यह वह क्यों नहीं खोज रहा है
Black_fm

Ah @black_fm मैंने उत्तर में कुछ बदलाव किए। यदि आप इसे अभी उपयोगी पाते हैं तो आप इसे वोट कर सकते हैं। :)
मुस्तकीम के

0

मेरी स्थिति में, हम Git Flow और GitHub का उपयोग कर रहे हैं। इसके लिए आपको बस इतना करना है: अपनी सुविधा शाखा की अपनी विकास शाखा के साथ GitHub पर तुलना करें।

यह केवल आपकी सुविधा शाखा में किए गए कमिट को दिखाएगा।

उदाहरण के लिए:

https://github.com/your_repo/compare/develop...feature_branch_name


मैं मानता हूं कि जब आप स्थिति में आते हैं "मैं देखना चाहता हूं कि एक पुल अनुरोध कैसा दिखेगा", सबसे अच्छा समाधान अक्सर अनदेखा करना है gitऔर इसके बजाय GitHub का उपयोग केवल एक पुल अनुरोध बनाने या शाखाओं की तुलना करने के लिए करना है।
pkamb
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.