【Git】配置Git

配置Git

忽略特殊文件

在日常开发中,有些文件不想或不应该提交到远端,如保存数据库密码的配置文件。

在Git工作区的根目录下创建一个特殊的.gitignore文件,把要忽略的文件名填进去,Git就会自动忽略这些文件。

不需要从头写.gitignore文件,gitee在创建仓库时可为我们生成,但需要主动勾选:

如果当时没有选择这个选择,在工作区创建一个也是可以的。

无论哪种方式,最终都可以得到一个完整的 .gitignore 文件,例如我们想忽略以 .so.ini 结尾所有⽂件, .gitignore 的内容如下:

复制代码
# 省略选择模板的内容
...
# My configurations:
*.ini
*.so

在.gitignore文件中也可以指定某个确定的文件。

最后,把.gitignore提交到远端:

bash 复制代码
$ vim.gitignore
$ git add.
$ git commit -m"add.gitignore"
[master 97811ab] add.gitignore
 1 file changed, 3 insertions(+)
 create mode 100644.gitignore
 
$ git push origin master
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Compressing objects: 100% (3/3), 362 bytes | 362.00 KiB/s, done.
Writing objects: 100% (3/3), 268 bytes | 134.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: Powered by GITEE.COM [GNK-6.4]
To gitee.com:hyb91/git_teaching.git
 60e6b0a..97811ab  master -> master

接着验证.gitignore文件的能力,在工作区新增两个文件a.so b.ini:

bash 复制代码
$ touch a.so b.ini

$ git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean

检验.gitignore的标准就是git status命令显示working tree clean

若想强制添加被忽略的文件,可用 -f 强制添加:

bash 复制代码
$ git add -f [filename]

若怀疑.gitignore写得有问题,可用git check-ignore命令检查,如检查a.so文件:

bash 复制代码
$ git check-ignore -v a.so
.gitignore:3:*.so         a.so

当编写规则排除部分文件(如排除所有.开头的隐藏文件:.* ),却发现.gitignore也被排除,可添加例外规则:

复制代码
# 排除所有.开头的隐藏文件:
.*

# 不排除.gitignore
!.gitignore

把指定文件排除在.gitignore规则外的写法是 !+文件名

给命令配置别名

使用Git时,有些命令较长,git支持对命令进行简化。

  • 将git status简化为git st,对应的命令为:
bash 复制代码
$ git config --global alias.st status

--global参数是全局参数,这些命令在这台电脑的所有Git仓库都有用。不加,则只针对当前仓库起作用。

使用git st的效果:

bash 复制代码
$ git st
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
  • 配置一个git last,让其显示最后一次提交信息:
bash 复制代码
$ git config --global alias.last 'log -1'

使用git last显示最近一次的提交:

bash 复制代码
hyb@139-159-150-152:~/git_teaching$ git last
commit 97811ab0d4374aeb54fae32bfc762b08170 (HEAD -> master, origin/master, origin/HEAD)
Author: hyb <265811ab0d4374aeb54fae32bfc762b08170@qq.com>
Date:   Fri May 12 17:27:06 2023 +0800

    add.gitignore
相关推荐
jkyy201423 分钟前
AI运动数字化:以技术重塑场景,健康有益赋能全域运动健康管理
大数据·人工智能·健康医疗
金融小师妹31 分钟前
4月30日多因子共振节点:鲍威尔“收官效应”与权力结构重塑的预期重构
大数据·人工智能·重构·逻辑回归
2601_9499251836 分钟前
AI Agent如何重构跨境物流的决策?
大数据·人工智能·重构·ai agent·geo优化·物流科技
xiaoduo AI1 小时前
客服机器人问题解决率怎么统计?Agent系统自动判断是否解决,比人工回访准?
大数据·人工智能·机器人
小五兄弟2 小时前
YouTube 肖像检测扩展背后:短剧出海版权保护的技术实现与实战策略
大数据·人工智能
阿瑞说项目管理3 小时前
2026 实战入门指南:企业 Agent 到底能解决哪些工作问题?
大数据·人工智能·agent·智能体·企业级ai
ZOOOOOOU3 小时前
云边端协同架构下,门禁权限引擎的离线决策与策略续存实现
大数据·人工智能·架构
189228048613 小时前
EMMC32G-TA28闪存EMMCH26M78103CCR
大数据·人工智能·缓存
dingzd953 小时前
Facebook强化原创内容分发后跨境品牌如何重做素材策略
大数据·人工智能·新媒体运营·内容营销·跨境
Mr_sst4 小时前
infra-ai模块宏观设计解析:业务与模型之间的中间层核心架构
大数据·人工智能·ai·llama