আমি একটি স্ক্রিনকাস্ট দেখেছি যেখানে কেউ পেয়েছে
git st
git ci
কাজ করতে. আমি যখন এটি করি তখন আমার জিজ্ঞাসা করে একটি ত্রুটি পাই যে আমি অন্য কিছু বোঝাতে চাইছি।
গিট গৌরব হওয়া, আমার এটি জানতে হবে আপনার এটি করতে কী করতে হবে?
আমি একটি স্ক্রিনকাস্ট দেখেছি যেখানে কেউ পেয়েছে
git st
git ci
কাজ করতে. আমি যখন এটি করি তখন আমার জিজ্ঞাসা করে একটি ত্রুটি পাই যে আমি অন্য কিছু বোঝাতে চাইছি।
গিট গৌরব হওয়া, আমার এটি জানতে হবে আপনার এটি করতে কী করতে হবে?
উত্তর:
মূলত আপনার কেবল লাইন যুক্ত করতে হবে ~/.gitconfig
[alias]
st = status
ci = commit -v
অথবা আপনি গিট কনফিগার নাম ব্যবহার করতে পারেন:
$ git config --global alias.st status
ইউনিক্সে, যদি উলামের কোনও স্থান থাকে তবে একক উদ্ধৃতি ব্যবহার করুন:
$ git config --global alias.ci 'commit -v'
উইন্ডোগুলিতে, উপনামের কোনও স্থান বা কমান্ড লাইনের যুক্তি থাকলে ডাবল উদ্ধৃতি ব্যবহার করুন:
c:\dev> git config --global alias.ci "commit -v"
এমনকি কমান্ডটি প্যারামিটার হিসাবে ফাংশন গ্রহণ করে। এলিয়াস একবার দেখুন ।
git config --global
এলিয়াস স্থাপন ~/.gitconfig
করার জন্য use .git/config
st
করতে status -s
(ছোট স্থিতি)
'
git config --global alias.sr 'svn rebase'
"
স্পেসগুলির সাথে কমান্ড যুক্ত করার সময় আপনার একক উদ্ধৃতিগুলির পরিবর্তে ডাবল উদ্ধৃতি ব্যবহার করতে হবে , যেমনgit config --global alias.ci "commit -v"
যেমন অন্যরা বলেছেন যে গিট এলিয়াস যুক্ত করার উপযুক্ত উপায়টি হ'ল .gitconfig
সম্পাদনা ~/.gitconfig
বা git config --global alias.<alias> <git-command>
কমান্ডটি ব্যবহার করে আপনার গ্লোবাল ফাইলে
নীচে আমার ~/.gitconfig
ফাইলের উপন্যাস বিভাগের একটি অনুলিপি দেওয়া আছে :
[alias]
st = status
ci = commit
co = checkout
br = branch
unstage = reset HEAD --
last = log -1 HEAD
এছাড়াও, আপনি যদি ব্যাশ ব্যবহার করছেন তবে আমি git-completion.bash
আপনার বাড়ির ডিরেক্টরিতে অনুলিপি করে এটি আপনার কাছ থেকে স্যুর করে বাশ সম্পূর্ণকরণ সেট আপ করার পরামর্শ দেব ~/.bashrc
। (আমি বিশ্বাস করি প্রো গিট অনলাইন বইয়ের কাছ থেকে আমি এটি সম্পর্কে শিখেছি )) ম্যাক ওএস এক্সে, আমি নিম্নলিখিত কমান্ডগুলি দিয়ে এটি সম্পাদন করেছি:
# Copy git-completion.bash to home directory
cp usr/local/git/contrib/completion/git-completion.bash ~/
# Add the following lines to ~/.bashrc
if [ -x /usr/local/git/bin/git ]; then
source ~/.git-completion.bash
fi
দ্রষ্টব্য: ব্যাশ সমাপ্তি কেবলমাত্র স্ট্যান্ডার্ড গিট কমান্ডের জন্যই নয় আপনার গিট এলিয়াসগুলির জন্যও কাজ করবে।
অবশেষে, কীস্ট্রোকগুলিকে সত্যিই কাটাতে, আমি আমার ~/.bash_aliases
ফাইলটিতে নিম্নলিখিতগুলি যুক্ত করেছি , যা থেকে উত্সাহিত ~/.bashrc
:
alias gst='git status'
alias gl='git pull'
alias gp='git push'
alias gd='git diff | mate'
alias gau='git add --update'
alias gc='git commit -v'
alias gca='git commit -v -a'
alias gb='git branch'
alias gba='git branch -a'
alias gco='git checkout'
alias gcob='git checkout -b'
alias gcot='git checkout -t'
alias gcotb='git checkout --track -b'
alias glog='git log'
alias glogp='git log --pretty=format:"%h %s" --graph'
~/.bashrc
ফাইলটি "সোর্স করা" এর অর্থ কী ?
~/.bashrc
: কী-স্ট্রোককে সত্যিই কাটাতে। ঠিক কী খুঁজছিল।
আমি মনে করি সবচেয়ে দরকারী গিটকনফিগ এটির মতো, আমরা সবসময় 20% ফাংশন গিটে ব্যবহার করি, আপনি "জি এলএল" চেষ্টা করতে পারেন, এটি আশ্চর্যজনক, বিশদ:
[user]
name = my name
email = me@example.com
[core]
editor = vi
[alias]
aa = add --all
bv = branch -vv
ba = branch -ra
bd = branch -d
ca = commit --amend
cb = checkout -b
cm = commit -a --amend -C HEAD
ci = commit -a -v
co = checkout
di = diff
ll = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat
ld = log --pretty=format:"%C(yellow)%h\\ %C(green)%ad%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=short --graph
ls = log --pretty=format:"%C(green)%h\\ %C(yellow)[%ad]%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=relative
mm = merge --no-ff
st = status --short --branch
tg = tag -a
pu = push --tags
un = reset --hard HEAD
uh = reset --hard HEAD^
[color]
diff = auto
status = auto
branch = auto
[branch]
autosetuprebase = always
আপনার git config alias
কমান্ড দরকার । গিট সংগ্রহস্থলে নিম্নলিখিতটি প্রয়োগ করুন:
git config alias.ci commit
গ্লোবাল ওরফে জন্য:
git config --global alias.ci commit
এটি আমার পক্ষে কাজ করেছে:
bco = "!f(){ git branch ${1} && git checkout ${1}; };f"
চালু:
$ git --version
git version 1.7.7.5 (Apple Git-26)
git cob
। গরমে ভুট্টার মতো গ্রীষ্মের কথা মনে করিয়ে দেয়। আসলে একটি মহান শব্দ আমরা পর্যাপ্ত সম্পর্কে চিন্তা না ... চাঙ্গ যে
ফোলউইং হ'ল 4 গিট শর্টকাট বা আপনার সময় সাশ্রয় করার জন্য ব্যবহারের মতো উপকরণ।
কমান্ডলাইনটি খুলুন এবং এগুলি নীচে 4 টি কমান্ড টাইপ করুন এবং পরে শর্টকাটগুলি ব্যবহার করুন।
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.br branch
এখন তাদের পরীক্ষা!
$ git co # use git co instead of git checkout
$ git ci # use git ci instead of git commit
$ git st # use git st instead of git status
$ git br # use git br instead of git branch
গিট ওরফে শেল কমান্ড কার্যকর করতে চাইছেন , উদাহরণস্বরূপ:
$ git pof
আমার টার্মিনাল ইন হবে জোর ধাক্কা আমার মূল রেপো বর্তমান শাখা:
[alias]
pof = !git push origin -f $(git branch | grep \\* | cut -d ' ' -f2)
যেখানে
$(git branch | grep \\* | cut -d ' ' -f2)
কমান্ড বর্তমান শাখা ফেরত দেয়।
সুতরাং ব্রাঞ্চের নামটি ম্যানুয়ালি টাইপ করার জন্য এটি একটি শর্টকাট:
git push origin -f <current-branch>
git push -f origin HEAD
বর্তমান শাখাটিকে তার প্রত্যন্ত অংশের দিকে ধাক্কা দেওয়ার জন্য কেন "সরল" নয় ? এছাড়াও, একটি শর্টকাট জোর দিয়ে ধাক্কা? যদি আপনাকে শর্টকাট থেকে উপকারের জন্য পর্যাপ্ত পরিমাণে চাপ দিতে হয় তবে আপনার সেটআপ বা ওয়ার্কফ্লোতে অন্য কোথাও কিছু ভুল নয়?
!git
শেষ গিট কমান্ডের পরিবর্তে ) তৈরি করতে ব্যর্থ হয়েছিল , তবে কনফিগার ফাইলটি ম্যানুয়ালি সম্পাদনা করে কৌশলটি সফল করেছিল।
আপনি উভয় গিট এবং নন-গিট কমান্ডের নাম দিতে পারেন। দেখে মনে হচ্ছে এটি 1.5 সংস্করণে যুক্ত হয়েছিল। git config --help
আমার ম্যাকের 2.5.4 সংস্করণে পৃষ্ঠা থেকে একটি স্নিপেট শো করে:
যদি উলামের সম্প্রসারণটি বিস্মৃতকরনের সাথে উপসর্গ করা হয় তবে এটি শেল কমান্ড হিসাবে বিবেচিত হবে।
উদাহরণস্বরূপ, আপনার গ্লোবাল .gitconfig
ফাইলে আপনার থাকতে পারে:
[alias]
st = status
hi = !echo 'hello'
এবং তারপরে এগুলি চালান:
$ git hi
hello
$ git st
On branch master
...
আপনার হোম ডিরেক্টরিতে আপনার ~ / .gitconfig এ নিম্নলিখিত লাইনগুলি যুক্ত করুন
[alias]
# one-line log
l = log --pretty=format:"%C(yellow)%h\\ %ad%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=short
ll = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat
ld = log --pretty=format:"%C(yellow)%h\\ %C(green)%ad%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=short --graph
ls = log --pretty=format:"%C(green)%h\\ %C(yellow)[%ad]%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=relative
a = add
ap = add -p
c = commit --verbose
ca = commit -a --verbose
cm = commit -m
cam = commit -a -m
m = commit --amend --verbose
d = diff
ds = diff --stat
dc = diff --cached
s = status -s
co = checkout
cob = checkout -b
# list branches sorted by last modified
b = "!git for-each-ref --sort='-authordate' --format='%(authordate)%09%(objectname:short)%09%(refname)' refs/heads | sed -e 's-refs/heads/--'"
# list aliases
la = "!git config -l | grep alias | cut -c 7-"
এটি হয়ে গেলে আপনি তা করতে পারেন git a
git add
উদাহরণস্বরূপ পরিবর্তে এটি । এটি একইরূপে অন্য শিরোনামে প্রয়োগ হয় শিরোনামের অধীনে ..
it গিট আপডেট গিট: 'আপডেট' গিট কমান্ড নয়। 'গিট - হেল্প' দেখুন। আপনি এই বোঝাতে চেয়েছিলেন? আপডেটের-সুত্র it গিট কনফিগারেশন - গ্লোবাল ওরফে.আপডেট 'পুল-ভি' it গিট আপডেট গিট থেকে: //git.kernel.org/pub/scm/git/git = [আপ টু ডেট] এইচটিএমএল -> উত্স / এইচটিএমএল = [আপ টু ডেট] রক্ষণাবেক্ষণ -> উত্স / রক্ষণাবেক্ষণ = [আপ টু ডেট] মানুষ -> উত্স / মানুষ = [আপ টু ডেট] মাস্টার -> উত্স / মাস্টার = [আপ টু ডেট] পরবর্তী -> উত্স / পরবর্তী = [আপ টু ডেট] পু -> উত্স / পু = [আপ টু ডেট] টুডো -> উত্স / টুডো ইতিমধ্যে আপ টু ডেট।
আমি dog
লগ গ্রাফটি দেখানোর জন্য উপনামটি তৈরি করেছি :
git config --global alias.dog "log --all --decorate --oneline --graph"
এবং এটি নিম্নলিখিত হিসাবে ব্যবহার করুন:
git dog
আপনি যদি '' ব্যবহার করেন তবে আপনি কমান্ডগুলিও চেইন করতে পারেন! অপারেটর শেল স্প্যান করতে:
aa = !git add -A && git status
এটি উভয়ই সমস্ত ফাইল যুক্ত করবে এবং এর সাথে একটি স্থিতির প্রতিবেদন দেবে $ git aa
।
আপনার এলিয়াসগুলি পরীক্ষা করার সহজ উপায়ের জন্য, এই উপনামটি যুক্ত করুন:
alias = config --get-regexp ^alias\\.
তারপরে একটি তাড়াতাড়ি $ git alias
আপনাকে আপনার বর্তমান উপাধি দেয় এবং তারা কী করে।
আপনি গিটের কনফিগারেশন ব্যবহার করে কাস্টম গিট এলিয়াস সেট করতে পারেন। এখানে বাক্য গঠন:
git config --global alias.<aliasName> "<git command>"
উদাহরণস্বরূপ, যদি আপনার ফাইলগুলির একটি তালিকা প্রদর্শন করার জন্য একটি উপনামের প্রয়োজন হয় যা সংহত বিবাদগুলি রয়েছে, চালান:
git config --global alias.conflicts "diff --name-only --diff-filter=U"
এখন আপনি উপরের কমান্ডটি কেবল "দ্বন্দ্ব" ব্যবহার করে ব্যবহার করতে পারেন:
git conflicts
# same as running: git diff --name-only --diff-filter=U
আমার জন্য ( আমি টার্মিনাল সহ ম্যাক ব্যবহার করছি ) কেবল তখনই কাজ করতাম যখন আমি .bash_profile এ যুক্ত করেছিলাম এবং পরিবর্তনটি লোড করার জন্য অন্য ট্যাবটি খুলি :
alias gst="git status"
alias gd="git diff"
alias gl="git log"
alias gco="git commit"
alias gck="git checkout"
alias gl="git pull"
alias gpom="git pull origin master"
alias gp="git push"
alias gb="git branch"
অন্যান্য উত্তরগুলিতে উল্লিখিত স্ট্যান্ডার্ড গিট কনফিগার পদ্ধতির চেয়ে ছোট ছোট উপকরণগুলি পেতে , আমি একটি এনপিএম প্যাকেজ মিঙ্গিট তৈরি করেছি ( npm install -g mingit
) যাতে সর্বাধিক কমান্ডগুলি 2 টি শব্দের পরিবর্তে 2 অক্ষর হয়ে যায়। এখানে উদাহরণগুলি:
g a . // git add .
g b other-branch // git branch other-branch
g c "made some changes" // git commit -m "made some changes"
g co master // git checkout master
g d // git diff
g f // git fetch
g i // git init
g m hotfix // git merge hotfix
g pll // git pull
g psh // git push
g s // git status
এবং অন্যান্য কমান্ড একইভাবে সংক্ষিপ্ত হবে। এটি ব্যাশের পরিপূর্ণতাও রাখে। প্যাকেজটি আপনার ডটফাইলে বাশ ফাংশন যুক্ত করে, ওএসএক্স, লিনাক্স এবং উইন্ডোতে কাজ করে। এছাড়াও, অন্যান্য অন্যান্য এলিয়াসগুলির মত নয় এটি পৃথক git
-> g
পাশাপাশি দ্বিতীয় প্যারামিটার।
আপনি যদি ~/.gitconfig
বিকল্পটির বিকল্প চান এবং কিছুটা খননের জন্য খুলতে পারেন তবে অন্য একটি বিকল্প হ'ল গ্লোবাল নোড প্যাকেজে মোড়ক রেখে সম্পূর্ণ কাস্টম গিট কমান্ড লিখতে হবে।
আপনার প্যাকেজ.জসনে, আপনি রুট কমান্ডটি (উদাহরণ gt
:) সংজ্ঞায়িত করে সঠিক গিট কমান্ডগুলি কার্যকর করতে নির্দিষ্ট কমান্ডগুলি ফিল্টার করবেন। উদাহরণস্বরূপ, git checkout my-branch
হতে পারে gt co mybranch
।
এনপিএমের "খ্রিস্টিয়ান-গিট" প্যাকেজটি এই পদ্ধতিটি ব্যবহার করে: https://github.com/alexmacarthur/christian-git
আমার .gitconfig ফাইলের পিএফএ স্ক্রিনশট
নীচের এলিয়াস সহ
[alias]
cb = checkout branch
pullb = pull main branch
.gitconfig
আমি আপনার এলিয়াসগুলির জন্য একটি .gitconfig
অন্তর্ভুক্ত ব্যবহার করার পরামর্শ দিচ্ছি । একবার আপনি এলিয়াস তৈরি করা শুরু করার পরে, সম্ভবত আপনি তাদের অনেকগুলি দিয়ে শেষ করবেন। তারা সম্ভবত এমন কিছু হতে পারে যা আপনি অন্যদের সাথে ভাগ করতে চান। এগুলি ডেডিকেটেড ফাইলে রেখে দেওয়া ভাগ করে নেওয়া সহজ করে তোলে। আপনার দল ভাগ করে দেওয়া উপনাম রাখতে গিট রেপোও ব্যবহার করতে পারে। এবং অবশ্যই কিছু এলিয়াস আপনি ভাগ করতে চাইবেন না, তাই এগুলি একটি ব্যক্তিগত ওরফে ফাইলে রাখুন।
[include]
path=src/dotfiles/.gitaliases
[include]
path=src/team-utils/gitaliases
[include]
path=.gitaliases.private
উইন্ডোজের জন্য আরেকটি সম্ভাবনা হ'ল .bat ফাইলগুলিতে আপনার শর্টকাট রয়েছে এমন একটি ডিরেক্টরি পূরণ করা। ফাইলটির নাম হ'ল শর্টকাট be কেবল আপনার PATH এনভায়রনমেন্ট ভেরিয়েবলের জন্য ডিরেক্টরিটি যুক্ত করুন এবং সেমিডি উইন্ডোতে আপনার নিষ্পত্তি করার জন্য সমস্ত শর্টকাট রয়েছে।
উদাহরণস্বরূপ (gc.bat):
git commit -m %1
তারপরে আপনি কনসোলে নিম্নলিখিত কমান্ডটি কার্যকর করতে পারেন:
gc "changed stuff"
আমি এটিকে উত্তর হিসাবে যুক্ত করার কারণ হ'ল এটি ব্যবহার করার সময় আপনি git ...
কেবল কমান্ডের মধ্যেই সীমাবদ্ধ নন ।