Git基本配置
用来管理项目依赖的工具
1.全局配置
- 配置用户信息
# 设置全局用户名
git config --global user.name "your name"
# 设置邮箱
git config --global user.email "your email"
- 查询配置
# 查看配置信息
git config --list
2.本地仓库
- 查看仓库状态
git status -s
- 添加文件到本地
# 添加单个文件到暂存区
git add Readme.txt
# 将当前目录下所有修改添加到暂存区,除按照规则忽略的之外
git add .
- 文件储存到暂存区
# 如果暂存区有文件,则将其中的文件提交到仓库
git commit
# 带评论提交,用于说明提交内容、变更、作用等
git commit -m 'your comments'
- 查看提交历史
# 显示所有提交的历史记录
git log
# 单行显示提交历史记录的内容
git log --pretty=oneline
- 版本回退
# 查看提交版本
git reflog
# 会退到 commit_id 指定的提交版本
git reset --hard 'commit_id'
- 删除文件
# 删除已经被提交过的 Readme.md
git rm Readme.md
3.分支管理
- 查看分支
# 查看本地分支信息
git branch
# 查看相对详细的本地分支信息
git branch -v
# 查看包括远程仓库在内的分支信息
git branch -av
- 创建分支
# 新建一个名称为 dev 的分支
git branch dev
- 切换分支
# 新建完 dev 分支以后,通过该命令切换到 dev 分支
git checkout dev
- 创建并切换分支
# 新建 dev 分支,并切换到该分支上
git checkout -b dev
- 合并分支
# 切换回 master 分支
git checkout master
# 将 dev 分钟中的修改合并回 master 分支
git merge dev
- 删除分支
# 删除 dev 分支
git branch -d dev
4.远程仓库
- 查看远程仓库
git remote -v
# origin ——仓库服务器的默认名称
- 添加远程仓库
# 为本地仓库添加远程仓库
git remote add origin your_remote_git_repo
- 推送内容
# 第一次推送时使用,可以简化后面的推送或者拉取命令使用
git push -u origin master
# 将本地 master 分支推送到 origin 远程分支
git push origin master
!> 推送之前,需要先pull远端仓库,如果发现提交版本不一致,出现错误
- 拉取内容
# 仅仅获取远程仓库的更新内容,并不会自动做合并
git fetch origin master
# 获取远程仓库的内容后,会自动做合并
git pull origin master
- 移除远程仓库路径
# 移除一个远程仓库
git remote rm origin
!> 此命令只是从本地移除远程仓库的记录,并不会真正影响到远程仓库
- 克隆代码
# 通过 https 协议,克隆 Github 上 git 仓库的源码
git clone https://github.com/test/demo1.git
# 通过 ssh 协议,克隆 Github 上 git 仓库的源码
git clone git@github.com:test/demo1.git
- 拉取代码
git pull [远程仓库名称] [分支名称]
5.常用操作
git remote #查看所有远程仓库名称
git remote -v #查看远程仓库缩略信息
git push origin master # 将本地仓库代码推送到远程仓库
git clone https://github.com/test/demo1.git # 克隆远程仓库代码到本地
git pull origin master # 拉取远程仓库代码到本地:(fetch+merge)
多SSH配置
1.生成多个SSH
ssh-keygen -t rsa -C 'xxxxx@a.com' -f ~/.ssh/gitee_a_rsa
ssh-keygen -t rsa -C 'xxxxx@b.com' -f ~/.ssh/gitee_b_rsa
ssh-keygen -t rsa -C 'xxxxx@c.com' -f ~/.ssh/gitlab_rsa
2.配置SSH
- 在 ~/.ssh 目录下新建一个config文件,添加如下内容
# gitee a
Host gitee.a.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_a_rsa
User xxxxx@a.com
# gitee b
Host gitee.b.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_b_rsa
User xxxxx@b.com
# gitlab私服
Host git.hzlim.cn
HostName git.hzlim.cn
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitlab_rsa
User xxxxx@c.com
Port 2222
3.测试连通性
ssh -T git@gitee.a.com
ssh -T git@gitee.b.com
ssh -T git@git.hzlim.cn
4.配置仓库指向的SSH
- 在仓库路径设置提交代码的信息
git@gitee.a.com
为配置文件中的Host地址
git config remote.origin.url git@gitee.a.com:hzlim/homework.git
更新时间:{docsify-updated}