首页 > 其他分享 >自定义 Git

自定义 Git

时间:2024-09-27 09:45:33浏览次数:12  
标签:git 自定义 -- global alias Git config

我们可以对 Git 做一些配置。

配置别名

有没有经常敲错命令?比如 git status​?status ​这个单词真心不好记。

如果敲 git st ​就表示 git status ​那就简单多了,当然这种偷懒的办法我们是极力赞成的。

我们只需要敲一行命令,告诉 Git,以后 st ​就表示 status​:

$ git config --global alias.st status

当然还有别的命令可以简写,很多人都用 co ​表示 checkout​,ci ​表示 commit​,br ​表示 branch​:

$ git config --global alias.co checkout
$ git config --global alias.ci commit
$ git config --global alias.br branch

以后提交就可以简写成:

$ git ci -m "bala bala bala..."

--global ​参数是全局参数,也就是这些命令在这台电脑的所有 Git 仓库下都有用。

如果有空格,可以用字符串包住:

git config --global alias.logone "log --pretty=oneline"

同样的,这些配置也是在 Git 的配置文件里的(忘了的同学请回顾《安装和配置 Git》):

[alias]
	st = status
	cm = commit -m

别名就在 [alias] ​后面,要删除别名,可以修改配置文件,删除对应的行删掉;或者使用命令:

$ git config --global --unset 

如果想要查看所有别名,可以这样:

git config --list --show-origin | findstr alias

其中,findstr 是 Windows 下过滤字符串的语法,在 Mac 和 Linux 下可以用 grep。

项目配置

在 git 中,我们使用 git config 命令用来配置 git 的配置文件,git 配置级别主要有以下 3 类:

1、仓库级别 local 【优先级最高】

2、用户级别 global【优先级次之】

3、系统级别 system【优先级最低】,使用方式和 global 类似:git config --system

配置 Git 的时候,加上 --global ​是针对当前用户起作用的,相关的配置文件在用户目录下。

如果不加 --global​,那只针对当前的仓库起作用,配置文件都放在当前目录的 .git/config ​文件中:

$ cat .git/config
[core]
        repositoryformatversion = 0
        filemode = false
        bare = false
        logallrefupdates = true
        symlinks = false
        ignorecase = true
[remote "gitee"]
        url = [email protected]:peterjxl/LearnGit.git
        fetch = +refs/heads/*:refs/remotes/gitee/*
[remote "github"]
        url = [email protected]:Peter-JXL/LearnGit.git
        fetch = +refs/heads/*:refs/remotes/github/*
[branch "master"]
        remote = gitee
        merge = refs/heads/master

一些其他配置

有时候,我们拉取项目的时候,会遇到文件名过长导致无法拉取的情况:

$ git clone [email protected]

......
error:unable to create file xxxx : Filename too long
fatal:unable to checkout working tree
warning:Clone succeeded,butcheckout failed
You can inspect what was checked out with ‘git status’ and retry the checkout with ‘git checkout -f HEAD’
......

git 是可以支持创建 4096 长度的文件名,上述问题在 Unix 系统和 Mac 系统中是不会出现的,这是在 Windows 系统中调用旧的 api,支持长度 260 长度的文件名。允许较长的文件名这个设置在 Windows 系统中默认是关闭的。

此时,我们可这样配置:

$ git config --global core.longpaths true

标签:git,自定义,--,global,alias,Git,config
From: https://www.cnblogs.com/PeterJXL/p/18435065

相关文章

  • Git 与远程分支
    90.远程仓库和分支我们经常需要对远程仓库里的分支进行更新。‍当从远程库clone时,默认情况下,只会拉取master​分支,并且会将本地的master分支和远程的master分支关联起来:$gitbranch*master‍‍推送本地分支推送分支,就是把该分支上的所有本地提交推送到远程库......
  • 《HelloGitHub》第 102 期
    兴趣是最好的老师,HelloGitHub让你对编程感兴趣!简介HelloGitHub分享GitHub上有趣、入门级的开源项目。github.com/521xueweihan/HelloGitHub这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言Python、Java、Go、C/C++、Swift...让你在短......
  • hibernate 自定义表名与列名 - 增删改查分页 - 兼容Mysql和Oracle
    1.新增service,先组装SQLimportlombok.extern.slf4j.Slf4j;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.beans.factory.annotation.Value;importorg.springframework.data.domain.Page;importorg.springframework.stereo......
  • Unity UI Tookite:实现命令控制台 [自定义元素]
    目录前言功能需求基础逻辑实现——输入输出分离逻辑实现——命令解析/历史指令切换历史指令解析指令基于反射的命令组自动装载逻辑实现——命令提示逻辑实现——定位报错逻辑实现——内容滚动/元素铺满逻辑实现——可变文本块最后前言最近在将Godot项目重写至Unit......
  • 掌握 GitHub Webhook:综合指南
    GitHubWebhooks提供了一种强大的方法来自动化工作流程并将GitHub与外部服务集成,根据存储库中的事件提供实时更新。无论您是想触发部署、发送通知还是跨平台同步数据,GitHubwebhooks都提供了灵活高效的解决方案。在本指南中,我们将探讨GitHubWebhooks是什么、它们如何工作以......
  • 掌握 Git:如何删除本地、合并和远程分支
    在软件开发领域,有效的版本控制对于确保顺利协作和项目管理至关重要。Git是使用最广泛的版本控制系统之一,了解如何有效地处理分支可以节省时间并防止错误。在本文中,我们将探讨如何管理本地、合并和远程Git分支,重点关注有助于简化工作流程的命令。删除本地Git分支在处理项目时......
  • git 清除二进制文件的 changes 状态
    问题:某个分支上修改了二进制文件,导致changes一直存在,切换到主分支也仍然存在,点击Discard也没用使用gitreset--hard还原到初始状态,也不行,不过输出结果会给出错误信息Encountered7file(s)thatshouldhavebeenpointers,butweren't:解决方法:根据这个线索......
  • Git 基本操作
    目录一、基本概念1、工作区域2、文件状态二、基本使用1、设置用户标识2、初始化仓库3、提交文件到暂存区4、提交到本地库5、推送到远程仓库5.1错误说明6、克隆三、分支操作1、查看分支2、创建分支3、切换分支4、合并分支5、删除分支6、上传分支四、替换本地改动五、......
  • Git-如何区分使用个人账户和公司账户
    个人日常编写点小玩具,code的版本控制一般托管于GitHub,但是公司内部使用GitLb来进行代码版本控制,这样为了能够在同一台MacBook(自带,公司有补贴)日常区分出两个账户,通过翻阅资料做了如下配置。操作环境MacBookGit(gitversion2.39.5)命令行终端SSH密钥生成在终端,使......
  • Windows 允许用户自定义和安装网络协议。以下是一些方法和步骤,帮助您在 Windows 中进
    Windows允许用户自定义和安装网络协议。以下是一些方法和步骤,帮助您在Windows中进行此操作。1.使用设备管理器安装协议您可以通过设备管理器来安装特定的网络协议:打开设备管理器:右键点击“开始”菜单,选择“设备管理器”。找到网络适配器:展开“网络适配器”部分。......