работать. Когда я делаю это, я получаю сообщение об ошибке, спрашивая меня, имел ли я в виду что-то еще.
Будучи мерзавцем, мне нужно знать, что ты должен сделать, чтобы это сделать?
Я настоятельно рекомендую вам использовать git config --globalпсевдонимы ~/.gitconfigвместо .git/configтекущего хранилища.
Каскабель
27
Я предпочитаю настройки stв status -s(короткий статус)
HASEN
20
Это действительно потрясающе. Я искал это. Просто на голову, если у вас есть команда с пробелами, вы должны использовать, 'какgit config --global alias.sr 'svn rebase'
Амир Раминфар
1
@HellishHeat Эти псевдонимы создаются git для git. Если вы хотите использовать псевдонимы для какой-либо другой системы командной строки, вам придется посмотреть, как это сделать в этой системе. (Похоже, вы используете Unix-подобную систему, и я знаю, что создать псевдонимы в Unices довольно просто. Хотя синтаксис другой. Попробуйте поиск в Google.)
Майкл Дорст
17
Еще одно замечание: если вы используете Git в командной строке Windows, вам нужно будет использовать двойные кавычки "вместо одинарных кавычек при добавлении команды с пробелами, напримерgit config --global alias.ci "commit -v"
ABVincita
179
Как уже говорили другие, подходящий способ добавить псевдонимы git в ваш глобальный .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
Кроме того, если вы используете bash, я бы порекомендовал настроить завершение bash, скопировав его git-completion.bashв свой домашний каталог и используя его ~/.bashrc. (Мне кажется, я узнал об этом из онлайн-книги по Pro Git .) В Mac OS X я выполнил это с помощью следующих команд:
# 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 будет работать не только для стандартных команд git, но и для ваших псевдонимов git.
Наконец, чтобы по-настоящему сократить количество нажатий клавиш, я добавил в свой ~/.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файла?
Анбизкад
1
~/.bashrc: действительно вырубить нажатия клавиш. Именно то, что искал.
parasrish
Этот ответ является прекрасным примером того, почему я предлагаю использовать .gitconfig, включенный в мой ответ! stackoverflow.com/a/59896430/117471
Бруно Броноски
65
Я думаю, что наиболее полезный gitconfig такой: мы всегда используем функцию 20% в git, вы можете попробовать "g ll", это удивительно, детали:
[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 --global alias.bco 'checkout -b'. Тогда вы можете сделать: git bco new-branch. :)
Рассел
4
Мне нравится git cob. напоминает мне о лете, как в кукурузе в початках. на самом деле великое слово мы не думаем о достаточно ... початках , который
Мати Тернер
4
В случае, если кто-то, кроме меня, впервые увидел команду git alias, начинающуюся с !, обратите внимание, что Since version 1.5.0, Git supports aliases executing non-git commands, by prefixing the value with "!"( ref )
$ 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 push -f origin HEADпротолкнуть текущую ветку к ее удаленному коллеге? Кроме того, ярлык, чтобы нажать с силой? Если вам приходится нажимать силу достаточно часто, чтобы воспользоваться сочетанием клавиш, разве что-то не так в других местах вашей настройки или рабочего процесса?
RomainValeri
Bash создавал псевдоним (заменив !gitего последней командой git), но ручное редактирование файла конфигурации помогло.
Х. де Йонге
5
Вы можете использовать псевдонимы как git, так и не git. Похоже, это было добавлено в версии 1.5. Фрагмент со git config --helpстраницы версии 2.5.4 на моем Mac показывает:
Если расширение псевдонима начинается с восклицательного знака, оно будет рассматриваться как команда оболочки.
Например, в вашем глобальном .gitconfigфайле вы можете иметь:
$ git update
git: «update» не является командой git. Смотрите «git --help».
Вы имели в виду это?
обновление-ссылок
$ git config --global alias.update 'pull -v'
$ git update
Из git: //git.kernel.org/pub/scm/git/git
= [до даты] html -> origin / html
= [в актуальном состоянии] maint -> origin / maint
= [в курсе] человек -> происхождение / человек
= [в курсе] мастер -> источник / мастер
= [в курсе] следующий -> происхождение / следующий
= [в актуальном состоянии] pu -> origin / pu
= [в актуальном состоянии] todo -> origin / todo
Уже в курсе.
Для меня ( я использую Mac с терминалом ) работал только тогда, когда я добавил на .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"
Просто чтобы получить псевдонимы даже короче, чем стандартный способ git config, упомянутый в других ответах, я создал пакет npm mingit ( 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
и другие команды будут такими же короткими. Это также сохраняет завершения bash. Пакет добавляет функцию bash к вашим точечным файлам, работает на OSX, Linux и Windows. Кроме того, в отличие от других псевдонимов, это псевдонимы git->, gа также второй параметр.
Если вам нужна альтернатива этой ~/.gitconfigопции и вы можете еще немного покопаться, другой вариант - написать полностью собственные команды git, поместив их в глобальный пакет узлов.
В вашем package.json вы определяете корневую команду (пример:) gt, а затем фильтруете конкретные команды для выполнения правильных команд git. Например, git checkout my-branchможет быть gt co mybranch.
Включите несколько файлов псевдонимов в свой .gitconfig
Я предлагаю использовать .gitconfiginclude для ваших псевдонимов. Как только вы начнете создавать псевдонимы, вы, вероятно, получите их много. Скорее всего, вы захотите поделиться ими с другими. Помещение их в отдельный файл позволяет легко обмениваться ими. Ваша команда может даже использовать git-репо для хранения общих псевдонимов. И, конечно же, некоторые псевдонимы вы не захотите предоставлять, поэтому храните их в личном файле псевдонимов.
Другая возможность для окон - иметь каталог, заполненный файлами .bat, в которых есть ваши ярлыки. Имя файла является ярлыком для использования. Просто добавьте каталог в переменную среды PATH, и у вас будут все ярлыки в окне cmd.
Например (gc.bat):
git commit -m %1
Затем вы можете выполнить следующую команду в консоли:
gc "changed stuff"
Причина, по которой я добавляю это как ответ, заключается в том, что при использовании этого вы не ограничены git ...только командами.
Вы можете сделать то же самое, добавив псевдонимы оболочки в ваш .profile, или .bashrc, или .bash_profile, в зависимости от вашей системы. Тогда все ваши псевдонимы находятся в одном файле. Кроме того, это стандартный механизм для выполнения вашей задачи. Раздел «псевдонимы команд» показывает некоторые обычно определенные псевдонимы оболочки, используемые для команд git. Есть лучшие ресурсы и учебники по этому вопросу, это просто ссылка, которую я открыл.
Ответы:
В основном вам просто нужно добавить строки в
~/.gitconfig
Или вы можете использовать команду git config alias:
В Unix используйте одинарные кавычки, если у псевдонима есть пробел:
В Windows используйте двойные кавычки, если у псевдонима есть пробел или аргумент командной строки:
Команда alias даже принимает функции в качестве параметров. Посмотрите на псевдонимы .
источник
git config --global
псевдонимы~/.gitconfig
вместо.git/config
текущего хранилища.st
вstatus -s
(короткий статус)'
какgit config --global alias.sr 'svn rebase'
"
вместо одинарных кавычек при добавлении команды с пробелами, напримерgit config --global alias.ci "commit -v"
Как уже говорили другие, подходящий способ добавить псевдонимы git в ваш глобальный
.gitconfig
файл, либо редактируя,~/.gitconfig
либо используяgit config --global alias.<alias> <git-command>
командыНиже приведена копия раздела псевдонимов моего
~/.gitconfig
файла:Кроме того, если вы используете bash, я бы порекомендовал настроить завершение bash, скопировав его
git-completion.bash
в свой домашний каталог и используя его~/.bashrc
. (Мне кажется, я узнал об этом из онлайн-книги по Pro Git .) В Mac OS X я выполнил это с помощью следующих команд:Замечания: завершение bash будет работать не только для стандартных команд git, но и для ваших псевдонимов git.
Наконец, чтобы по-настоящему сократить количество нажатий клавиш, я добавил в свой
~/.bash_aliases
файл следующее~/.bashrc
:источник
~/.bashrc
файла?~/.bashrc
: действительно вырубить нажатия клавиш. Именно то, что искал.Я думаю, что наиболее полезный gitconfig такой: мы всегда используем функцию 20% в git, вы можете попробовать "g ll", это удивительно, детали:
источник
Вам нужна
git config alias
команда. Выполните следующее в Git-репозитории:Для глобального псевдонима:
источник
Это сработало для меня:
на:
источник
git cob
. напоминает мне о лете, как в кукурузе в початках. на самом деле великое слово мы не думаем о достаточно ... початках , который!
, обратите внимание, чтоSince version 1.5.0, Git supports aliases executing non-git commands, by prefixing the value with "!"
( ref )Это создаст псевдоним
st
дляstatus
:git config --add alias.st status
источник
git st
когда вы можете использоватьgit s
, избавиться от этогоs
: PFollwing - это 4 git-ярлыка или псевдонима, которые вы можете использовать, чтобы сэкономить время.
Откройте командную строку и введите следующие 4 команды и используйте сочетания клавиш после.
Теперь проверь их!
источник
Для тех, кто хочет выполнять команды оболочки в псевдониме git , например:
В моем терминале будет принудительно вставлять текущую ветку в мой репозиторий:
Где
Команда возвращает текущую ветку.
Так что это ярлык для ручного ввода названия ветви:
источник
git push -f origin HEAD
протолкнуть текущую ветку к ее удаленному коллеге? Кроме того, ярлык, чтобы нажать с силой? Если вам приходится нажимать силу достаточно часто, чтобы воспользоваться сочетанием клавиш, разве что-то не так в других местах вашей настройки или рабочего процесса?!git
его последней командой git), но ручное редактирование файла конфигурации помогло.Вы можете использовать псевдонимы как git, так и не git. Похоже, это было добавлено в версии 1.5. Фрагмент со
git config --help
страницы версии 2.5.4 на моем Mac показывает:Например, в вашем глобальном
.gitconfig
файле вы можете иметь:А затем запустите их:
источник
Добавьте следующие строки в ваш ~ / .gitconfig в вашем домашнем каталоге
Как только это будет сделано, вы можете сделать
git a
вместо,git add
например. То же самое относится и к другим командам под заголовком псевдонима.источник
источник
Я создал псевдоним
dog
для отображения графа журнала:И используйте его следующим образом:
источник
Вы также можете объединять команды, если используете '!' Оператор для порождения оболочки:
Это добавит все файлы и даст вам отчет о состоянии
$ git aa
.Для удобного способа проверить ваши псевдонимы, добавьте этот псевдоним:
Затем быстрый
$ git alias
дает вам ваши текущие псевдонимы и что они делают.источник
Вы можете установить собственные псевдонимы git, используя конфигурацию git. Вот синтаксис:
Например, если вам нужен псевдоним для отображения списка файлов, которые имеют конфликты слияния, выполните:
Теперь вы можете использовать приведенную выше команду только с использованием «конфликтов»:
источник
Для меня ( я использую Mac с терминалом ) работал только тогда, когда я добавил на .bash_profile и открыл еще одну вкладку, чтобы загрузить изменения:
источник
Просто чтобы получить псевдонимы даже короче, чем стандартный способ git config, упомянутый в других ответах, я создал пакет npm mingit (
npm install -g mingit
), чтобы большинство команд становились 2 символами вместо 2 слов. Вот примеры:и другие команды будут такими же короткими. Это также сохраняет завершения bash. Пакет добавляет функцию bash к вашим точечным файлам, работает на OSX, Linux и Windows. Кроме того, в отличие от других псевдонимов, это псевдонимы
git
->,g
а также второй параметр.источник
Если вам нужна альтернатива этой
~/.gitconfig
опции и вы можете еще немного покопаться, другой вариант - написать полностью собственные команды git, поместив их в глобальный пакет узлов.В вашем package.json вы определяете корневую команду (пример:)
gt
, а затем фильтруете конкретные команды для выполнения правильных команд git. Например,git checkout my-branch
может бытьgt co mybranch
.Пакет "christian-git" на npm использует этот метод: https://github.com/alexmacarthur/christian-git
источник
Здесь даются псевдонимы. Даже если здесь есть отличные ответы, я добавил их, потому что они отличаются в Windows и Linux.
источник
Скриншот PFA моего файла .gitconfig
со следующими псевдонимами
источник
Включите несколько файлов псевдонимов в свой
.gitconfig
Я предлагаю использовать
.gitconfig
include для ваших псевдонимов. Как только вы начнете создавать псевдонимы, вы, вероятно, получите их много. Скорее всего, вы захотите поделиться ими с другими. Помещение их в отдельный файл позволяет легко обмениваться ими. Ваша команда может даже использовать git-репо для хранения общих псевдонимов. И, конечно же, некоторые псевдонимы вы не захотите предоставлять, поэтому храните их в личном файле псевдонимов.источник
Другая возможность для окон - иметь каталог, заполненный файлами .bat, в которых есть ваши ярлыки. Имя файла является ярлыком для использования. Просто добавьте каталог в переменную среды PATH, и у вас будут все ярлыки в окне cmd.
Например (gc.bat):
Затем вы можете выполнить следующую команду в консоли:
Причина, по которой я добавляю это как ответ, заключается в том, что при использовании этого вы не ограничены
git ...
только командами.источник