Fanfou Wiki

我等采石之人,当心怀建造大教堂之愿景。

用户工具

站点工具


git

Git

安装

Windows

  1. 双击安装即可

macOS

  1. 系统已包含 Git
  2. 重新安装:brew install git

初始化

# 配置使用初始分支名
git config --global init.defaultBranch master
 
# 检查用户是否混用换行符[false|warn|true]
# false:不做任何检查
# warn:在提交时检查并警告
# true:在提交时检查,如果发现混用则拒绝提交
# 必须使用 true 选项
git config --global core.safecrlf true
 
# 用于 CRLF 与 LF 之间的转换 [true|input|false]
# false:不进行转换
# input:在提交时,把 CRLF 转换成 LF;签出时不转换
# true:提交时,把 CRLF 转换成 LF;签出时把 LF 转换成 CRLF
# 必须使用 false 选项,禁止默认转换
git config --global core.autocrlf false
 
git config --global pull.rebase false

全局配置

.gitconfig
[user]
  name = where.liu
  email = liuzhaowei55@gmail.com
[core]
  quotepath = false
  autocrlf = false
  safecrlf = true
  longpaths = true
[credential]
  helper = manager
[i18n]
  commitencoding = utf-8
  logoutputencoding = utf-8
[i18n "commit"]
  encoding = utf-8

Windows 解决中文乱码

  1. git config –global core.quotepath false
  2. 在 Git Bash 窗口右键,选择 Options,选择 Text 设置选项,将 Character set 设置为:UTF-8 ;
  3. 重新打开 Git Bash 即可。
  4. 然后你会发现根本解决不了乱码问题~

常用命令

清理文件

# 清理未被追踪的文件
$ git clean -f
 
# 清理未被追踪的文件夹和文件
$ git clean -df
 
# 连 gitignore 的 untrack 文件/目录也一起删掉 (慎用,一般这个是用来删掉编译出来的 .o之类的文件用的)
$ git clean -xfd
 
# 在用上述 git clean 前,墙裂建议加上 -n 参数来先看看会删掉哪些文件,防止重要文件被误删
$ git clean -nf
$ git clean -nfd
$ git clean -nxfd

放弃本地修改

1. 使用 git add 命令之前;

$ git checkout -- filename

2. 已经使用 git add 添加文件到缓存区;

# 此命令是取消之前的 ''git add'' 添加缓存操作,并不会删除本地所作的修改。
$ git reset HEAD filename

分支命令

1. 查看分支

# 查看本地分支
$ git branch
# 查看远程分支
$ git branch -r
# 查看所有分支
$ git branch -a

2. 切换分支

# 新建分支
$ git branch branch_name
# 切换本地分支
$ git checkout branch_name
# 新建分支并切换到新分支
$ git checkout -b branch_name

3. 删除分支

# 删除本地分支
$ git branch -d branch_name
# 删除远程分支
$ git branch -r -d origin/branch_name

4. 关联本地和远程分支

# 远程已有,但本地没有
$ git checkout --track origin/branch_name
# 本地已有,但远程没有
$ git push --set-upstream origin branch_name

5. 在本地重新拉取远程的分支

# 很多时候,远程分支已经不存在了,但是我们在本地还是可以看到远程分支的信息,此时可以使用下边这条命令重新拉取远程分支
$ git remote prune origin
# 是否追踪文件模式 [true|false]
git config core.filemode false
git.txt · 最后更改: 2021/07/23 08:51 由 admin