以下使用 --global 标志全局配置的命令可以 ~/.gitconfig 文件下查看。

创建别名

使用 <alias> 可以极大地提高效率,我常用的有

使用下面的命令创建别名,将 <alias> 替换为别名名称,将 <command> 替换为要使用别名的命令:

$ git config --global alias.<alias> <command>

常用的别名有:

$ git config --global alias.co checkout
$ git config --global alias.br branch# 使用你喜欢的或自己的
[alias]co = checkoutcob = checkout -bcoo = !git fetch && git checkoutbr = branchbrd = branch -dst = statusaa = add -A .unstage = reset --soft HEAD^cm = commit -mamend = commit --amend -mfix = commit --fixupundo = reset HEAD~1rv = revertcp = cherry-pickpu = !git push origin `git branch --show-current`fush = push -fmg = merge --no-ffrb = rebaserbc = rebase --continuerba = rebase --abortrbs = rebase --skiprom = !git fetch && git rebase -i origin/master --autosquashsave = stash pushpop = stash popapply = stash applyrl = refloglast = log -1 HEADlogl = log --oneline

接下来,试下效果:

$ git st
$ git cm "xxx"

强制推送

有时,您需要将更改推送到远程存储库并覆盖文件。您可能习惯于使用 git push --force

但是如果其他人已经将更改推送到同一分支,会发生什么?您的命令将清除他们的提交。这肯定是不行的

Git 有一种更安全的方式来推送更改并覆盖您的提交。而不是使用的 --force 标志,你可以使用 --force-with-lease。此标志将防止您意外覆盖其他人的提交。这种工作方式有点神奇,但您可以相信它确实如此。

您可以 force-push 为此编写别名:

$ git config --global alias.force-push "push --force-with-lease"

现在您可以运行 git force-push,这更容易记住。当然,为了节省几次按键操作,您还可以添加此别名的简短版本。

$ git config --global alias.fp force-push

请注意,您只能在 Git 2.20+ 中为别名设置别名。

设置默认推送分支名称

默认情况下,推送时使用当前分支的名称作为远程分支的名称。

  • 使用 git config push.default current 将远程分支的名称设置为当前本地分支的名称作为默认名称。
  • 可以使用 --global 标志全局配置此选项。
$ git config [--global] push.default current
$ git config --global push.default current$ git checkout -b my-branch
$ git push -u
# 推送 origin/my-branch

默认情况下禁用快进合并

  • 使用 git config --add merge.ff false 禁用所有分支的快进合并,即使可能。
  • 您可以使用 --global 标志全局配置此选项。
$ git config [--global] --add merge.ff false
$ git config --global --add merge.ff false$ git checkout master
$ git merge my-branch
# 即使有可能也不会快进

列出所有 Git 别名

  • 使用 git config -l 列出的配置文件中设置的所有变量。
  • 使用管道运算符(|)管道输出,grep alias 表示仅保留别名。
  • 使用管道运算符(|)管道传输,并使用 sed/^alias\.//g' 删除别名。 每个别名的一部分。
$ git config -l | grep alias | sed 's/^alias\.//g'
# st=status
# co=checkout
# rb=rebase

添加提交消息模板

为当前存储库设置提交消息模板。可以使用 git config commit.template 指定 <file> 的提交当前库信息模板。

$ git config commit.template <file>

假设我们使用 "commit-template"作为我们的提交消息模板:

$ git config commit.template "commit-template"

commit-template 参考如下:

fix(<模块>): <描述>#<具体描述>#<问题单号># type 字段包含:
# feat:新功能(feature)
# fix:修补bug
# docs:文档(documentation)
# style: 格式(不影响代码运行的变动)
# refactor:重构(即不是新增功能,也不是修改bug的代码变动)
# test:增加测试
# chore:构建过程或辅助工具的变动
# scope:用于说明 commit 影响的范围,比如数据层、控制层、视图层等等。
# subject:是 commit 目的的简短描述,不超过50个字符
# Body:部分是对本次 commit 的详细描述,可以分成多行
# Footer:用来关闭 Issue或以BREAKING CHANGE开头,后面是对变动的描述、以及变动理由和迁移方法

详细的 Git 提交规范,可以参考 Vue 或 Angular 规范。

配置 Git 用户信息

  • 使用 git config user.email <email> 为当前储存库设置用户的电子邮件。
  • 使用git config user.name <name> 为当前储存库设置的用户名。
  • 您可以使用 --global 标志来配置全局用户信息。
$ git config [--global] user.email <email>
$ git config [--global] user.name <name>

配置当前存储库的用户

$ git config user.email "xxx@xxx.xxx"
$ git config user.name "O.O"

配置全局 Git 用户

$ git config --global user.email "xxx@xxx.xxx"
$ git config --global user.name "O.O"

配置存储库的行尾

  • 使用 git config core.eol [lf | crlf] 配置行尾。
  • lf 是 UNIX 行的结尾(\n),而 crlf DOS 行的结尾是(\r\n)。
$ git config core.eol [lf | crlf]

配置为使用 UNIX 行结束符

$ git config core.eol lf

自动更正 Git 命令

将 Git 配置为自动更正键入错误的命令。可以使用 git config --global help.autocorrect 1 使 Git 的自动更正。

$ git config --global help.autocorrect 1
$ git sttaus # 改为运行 "git status"

配置 Git 文本编辑器

默认情况下打开 Git 使用的是 vi 编辑器,如果你没怎么使用过 Linux 系统的话,可能不是很熟。你可以通过下面的命令来使用其他编辑器打开 Git。

使用 git config --global core.editor <editor-command> 调用 <editor-command> 作为 Git 文本编辑器。

$ git config --global core.editor <editor-command>

将 VS Code 设置为 Git 文本编辑器

$ git config --global core.editor "code --wait"

vi 作为 Git 的文本编辑器

$ git config --global core.editor "vi"

编辑 Git 配置文件

使用 git config --global -e 在默认 Git 文本编辑器中打开 Git 全局配置文件。

$ git config --global -e

shell 别名

$ git config --global alias.hello "!echo hello"
$ git config --global alias.dad '!curl https://icanhazdadjoke.com/ && echo'

http://www.taodudu.cc/news/show-5558361.html

相关文章:

  • postfix邮件系统搭建手册(openldap)
  • Linux基础教程(第2版)课后答案集合
  • Linux下添加计划任务,Linux系统下使用crontab添加计划任务的方法
  • Linux系统编程-02(vim-gcc-动态库静态库)
  • Vue3快速搭建后台管理系统
  • 神级编辑器 Vim 使用-正则替换篇
  • Linux常用命令:编辑器
  • ffmpeg解封装代码示例
  • 微信/QQ 出现该网页停止访问该如何处理
  • 计算机网络期末题库
  • 计算机网络 | 网络层ARP协议ICMP协议
  • 又是大义灭自己!QQ小程序被微信封禁暂停使用:不封一下都不知道这个功能...
  • 网络中的OSI7层模型-封装解封装
  • QQ好友的价值玩法 及如何搞到几万好友?
  • Android电视关闭的动画效果
  • HoloCubic小电视
  • 仿电视关机效果的动画
  • Win10关机后机箱风扇还一直转
  • win10关机后cpu风扇仍一直在转,解决办法
  • win10关机时提示需要结束程序
  • 唤醒幻数据包禁用会怎么样_Win10关机可以网络唤醒,睡眠无法网络唤醒?
  • 关闭服务器系统关机事件,让Win10关机时显示“关闭事件跟踪程序”(选择关机原因)...
  • 不用计算机时不必关机,笔记本电脑不用时要关机吗
  • 计算机休眠快还是关机快,你应该关机,睡眠还是休眠你的笔记本电脑? | MOS86...
  • #define怎么将多个常量字符串连接起来
  • C实现-字符串连接(具体)
  • Java基础字符串连接运算符
  • 7-5 字符串连接 (15分)
  • 字符串连接-C语言
  • matlab中字符串连接的方法

Git 常用配置和技巧相关推荐

  1. 【git 常用配置及常用命令】

    git 常用命令配置 git 常用配置及命令 1.1 git 邮箱配置 1.1.1 git alise 别名配置 1.1.2 git vim 编辑器配置 1.1.3 在本地创建远程分支并切换 1.1. ...

  2. GIT之git常用配置和操作

    =======mysysgit 配置 /etc/gitconfig [gui] encoding = utf-8 [i18n] commitencoding = utf-8 logoutputenco ...

  3. git常用配置(指令)

    1.配置用户名和邮箱 (1) 指令设置 $ git config --global user.name "username" $ git config --global user. ...

  4. Nginx的几个常用配置和技巧

    一个站点配置多个域名 server { listen 80; server_name ops-coffee.cn b.ops-coffee.cn;} server_name 后跟多个域名即可,多个域名 ...

  5. nginx 配置多个域名 指向不同服务_Nginx的几个常用配置和技巧

    文章列举了几个Nginx常见的,实用的,有趣的配置,希望看过之后能说一句:学到了! 一个站点配置多个域名 server { listen 80; server_name ops-coffee.cn b ...

  6. idea的几个好用快捷键、常用配置(包括git)、jdk和javaSE和javaEE、创建一个SE工程、debug、创建一个Web工程、打war包

    几个好用的快捷键(持续更新) Ctrl+Shift+f12 ,相当于myeclipse的ctrl+m 最大化窗口的 alt+shift+↑或↓,将当前行上移或下移 shift+enter ,当前行下一 ...

  7. Git 常用操作(1)- 配置、查看、添加、暂存和提交

    1. Git 基本概念 Git 有三种状态:已提交(committed).已修改(modified)和已暂存(staged). 已提交:表示数据已经安全的保存在本地数据库中. 已修改:表示修改了文件, ...

  8. GIT常用快捷键配置

    在使用GIT的时候有没有常常敲错命令    比如   git status ? 很长是不是? 如果是   git st ?方便不少 git 常用 简写命令 全局配置 git config --glob ...

  9. 从0开始学Git——Git的常用配置

    配置user信息 配置user.name和user.email git config --global user.name 'admin' #设置用户名 git config --global use ...

最新文章

  1. 09、redis哨兵的多个核心底层原理的深入解析(包含slave选举算法)
  2. ZYNQ EMIO使用及可重用封装
  3. 2021-01-21 linux shell脚本实现间隔一定时间执行一次任务
  4. 1.11.Flink DataSetAPI、DataSet API之Data Sources、DataSet API之Transformations、DataSet Sink部分详解
  5. Express — 使用步骤
  6. Redis -- 基础操作 [2]
  7. 国产手机:跨出去之路
  8. 随想录(程序调试与dll注入)
  9. 从Jetty、Tomcat和Mina中提炼NIO构架网络服务器的经典模式
  10. asp.net控件开发基础二
  11. 远程计算机统考试题,2015年电大远程网络教育计算机应用基础统考模拟试题集...
  12. 信号量(semaphore)
  13. 【React 】基于Antd Design的CheckBox多选框组件封装
  14. sql server 2000(迷你sql2000) jdbc驱动
  15. 打开小米随身wifi的无线网卡功能
  16. J-Flash(SEGGER)、J-link RTT Viewer下载、安装、使用
  17. Tool-windows用自带命令行,将webm的视频格式转为mp4
  18. 复杂网络笔记-R语言
  19. 在苹果Mac上如何恢复已删除的用户?
  20. 实战技法 - 短线操盘 (11)

热门文章

  1. 《从paxos到zookeeper分布式一致性原理与实践》读书笔记--第二章一致性协议--二阶段提交
  2. 据说可以让男人看一遍就哭的文章
  3. 12月最新玩法,月老盲盒微信小程序源码
  4. fateskins官网地址fateskins CSGO开箱子网站
  5. 原来华为手机熄屏后,竟还有5大隐藏操作!看完涨知识了
  6. 安卓手机反应越来越慢怎么办_安卓手机越用越卡怎么办,看完你学会了么
  7. 前滚和回滚详细过程举例
  8. 微信缓存JS文件问题
  9. 英文名字大全(男篇)(ZT)
  10. java中list中sublist_Java 中 List.subList() 方法的使用陷阱