- commits की तुलना, पुराने branches हटाने, और aliases बनाकर समय बचाने के तरीके जानें
- Git aliases
- रोज़मर्रा में इस्तेमाल होने वाले commands के लिए alias बनाकर terminal में काम का समय बचाएँ
- उदाहरण:
git checkout master टाइप करने के बजाय co master लिखें
~/.gitconfig फ़ाइल को सीधे संपादित करके commands बदलें या जोड़ें
- Command prompt में repository की स्थिति जाँचें
- repository की स्थिति देखने के लिए
git-prompt.sh चलाएँ
- अगर आप Linux इस्तेमाल कर रहे हैं और package manager के साथ Git install किया है, तो यह
/etc/bash_completion.d/ directory में पहले से मौजूद हो सकता है
- Command line में commits की तुलना करें
git diff command का इस्तेमाल करके एक ही फ़ाइल के versions या commits के बीच अंतर की तुलना करें
- अगर diff की तुलना के लिए अधिक visual tool चाहिए, तो
git difftool इस्तेमाल कर सकते हैं
- Meld: diff को visual तरीके से compare करने के लिए उपयोगी viewer/editor
- Uncommitted changes को stash करें
- जब आप अधूरा feature commit नहीं करना चाहते लेकिन मौजूदा changes को सुरक्षित रखना चाहते हैं, तब
git stash command से changes को अस्थायी रूप से हटा सकते हैं
- संशोधन पूरा करने के बाद पहले वाले changes पर लौटने के लिए
$ git stash pop चलाएँ
- बार-बार pull करें
- GitLab Flow इस्तेमाल करने पर नया काम feature branch में किया जाता है
- feature लागू करने में लगने वाले समय के दौरान
master branch में कई changes आ सकते हैं
- बड़े code conflicts से बचने और branch को
master में आसानी से merge करने के लिए master branch के changes को अपनी working branch में बार-बार लाना चाहिए
- Command auto-completion
- auto-completion scripts की मदद से bash, tcsh, zsh में commands को आसान और तेज़ी से इस्तेमाल किया जा सकता है
git pull लिखने के लिए सिर्फ git p जैसा शुरुआती हिस्सा टाइप करें और tab दबाएँ
- उपलब्ध सभी commands दिखाने के लिए terminal में
git लिखकर tab+tab दबाएँ
- Global
.gitignore सेट करें
- अगर आप
.DS_Store या Vim swp जैसी फ़ाइलें commit नहीं करना चाहते, तो उन्हें global .gitignore फ़ाइल में सेट कर सकते हैं
- Git की autosquash सुविधा को default बनाकर इस्तेमाल करें
- autosquash से interactive rebase के दौरान commits को squash करना आसान हो जाता है
- आप हर बार
git rebase -i —autosquash से इसे चालू कर सकते हैं, लेकिन इसे default setting के रूप में ऑन रखना ज़्यादा सुविधाजनक है
- fetch/pull करते समय remote से हटाई गई चीज़ों को local branches से भी हटाएँ
- जो branches remote repository से हट चुकी हैं, वे local repository में अब भी बची रह सकती हैं
- हर fetch/pull पर उन्हें हटाने के लिए
$ git config —global fetch.prune true सेट करें
- Git blame को ज़्यादा प्रभावी ढंग से इस्तेमाल करें
- Git blame यह पता लगाता है कि फ़ाइल में किसने कौन-सी line बदली
- options
$ git blame -w # whitespace को ignore करें
$ git blame -M # text move को ignore करें
$ git blame -C # दूसरे files में text move को ignore करें
- Alias जोड़कर merge request को local में checkout करें
- merge request में repository का पूरा history और MR से जुड़े branch में जोड़े गए commits शामिल होते हैं
- जब source project, target project का fork हो, तब public merge request को local में checkout किया जा सकता है
- HEAD का alias
@, HEAD के समान है। rebase के समय इसका इस्तेमाल करने से काम बहुत आसान हो जाता है
- फ़ाइल वापस लाना (reset)
- code बदलते समय अगर आपको लगे कि किए गए changes में समस्या है, तो फ़ाइल को वापस लाना होगा
- हर बदलाव पर अलग-अलग undo क्लिक करने के बजाय फ़ाइल को उस branch के
HEAD पर reset किया जा सकता है
- उदाहरण)
$ git reset —hard HEAD
- अगर सिर्फ एक फ़ाइल वापस लानी हो, तो यह command चलाएँ
- उदाहरण)
$ git checkout HEAD — path/to/file
git-open plugin
- जिस website पर आपकी current repository host की गई है, वहाँ जल्दी पहुँचने के लिए
git-open इस्तेमाल कर सकते हैं
git-extras plugin
- Git की usability बढ़ाने के लिए अतिरिक्त commands के साथ
git-extras plugin इस्तेमाल करें
git info (repository जानकारी दिखाना), git effort (प्रति फ़ाइल commit की संख्या) उपलब्ध हैं
अभी कोई टिप्पणी नहीं है.