文章目录
引言
- 本文旨在记录常用命令,没有做过于详细的介绍。如有需要详细原理介绍可查相关资料或请留言告知
1、Git下载安装
下载地址:https://git-scm.com/download/
安装过程执行下一步下一步就好
2、环境配置
2.1用户名和邮箱配置
git config --global user.name "用户名"
git config --global user.email "邮箱@xx.com"
2.2查看配置是否成功
git config user.name
git config user.email
*特殊配置用户名和邮箱时
(1)--global: 全局配置
解释:相当于以后所有的项目的git版本管理都会使用此配置的用户名和邮箱
(2)--local: 局部配置
解释:只针对当前项目git版本管理项目生效
区别是使用:
例如:在公司里一般会分配一个邮箱和用户名给你。这样的话针对公司的项目就先全局配置好。自己练手或者开源的项目就用局部配置自己的。
3、常用命令
3.1 从远程仓库克隆项目
(1)默认
git clone xxx(远程Git仓库地址) 【默认拉取master分支】
(2)指定拉取某分支代码:
git clone -b xx(分支名) yy(远程Git仓库地址)
3.2 Git查看分支和切换
(1)查看本地分支
git branch
(2)查看远程分支
git branch -r
(3)查看所有分支
git branch -a
(4)切换任意分支
git checkout xx(分支名)
3.3 Git目录下文件状态
- untracked 未跟踪(未被纳入版本控制)
- tracked已跟踪(被纳入版本控制)
- unmodified 未修改状态
- modified 已修改状态
- staged 已暂存状态
- new file 新增文件
git status(默认查看项目所有的文件状态)
git status xxx(查看指定文件状态)
3.4 Git提交代码
(1)提交本地更新
git commit -m xxx(写上记录修改了什么)
(2)推送本地更新到远程分支上
git push origin xxx(分支名)
3.5 Git代码合并
(1)将某分支代码和当前分支代码合并
git merge xxx [存在两个]
git rebase xxx [存在一个]
git rebase --abort [回到执行 rebase 之前]
git rebase --continue [解决矛盾后继续执行 rebase]
git stash [将所有未提交的修改保存至堆栈中隐藏起来]
git stash pop [将当前stash中的内容弹出,并应用到当前分支对应的工作目录上]
*如在push代码或pull时出现此提示冲突
Please, commit your changes or stash them before you can merge.
Aborting
**使用此命令组合解决冲突:
git stash
git pull
git stash pop
3.6 Git 日志查看
(1)显示所有日志
git log
(2)详细显示某次日志记录
git show xx(某次日志记录号)
3.7 Git Tag标签
(1)列出所有的标签Tag
git tag
(2) 列出指定标签的信息
git show xxx
(3)创建新标签
git tag xxx
(4)删除标签
git tag -d xxx [删除本地tag]
git push origin :refs/tags/xx [删除远程的tag]
(5)检出指定标签
git checkout -b xx(新建的分支名)yy(标签名)
*** 此方法检出标签比较方便:可对某一个重要版本做个tag,这样就可直接检出v1.0/v2.0这样类似版本的代码快速结合业务定向开发**
3.8 Git 回退版本
(1)git reset --hard HEAD 将当前版本重置为 HEAD(用于 merge 失败)
(2)git reset <commit> 将当前版本重置至某一个提交状态,代码不变
(3)git reset --merge <commit> 重置至某一状态,保留版本库中不同的文件
(4)git reset --keep <commit> 重置至某一状态,重置变化的文件,代码改变
(5)git checkout HEAD <file> 丢弃本地更改信息并将其存入特定文件
(6)git reset --hard <commit> 将当前版本重置至某一个提交状态(慎用!)