git常用命令
Git教程
一、配置签名
git是分布式版本控制工具,所以我们需要填写用户名和邮箱作为一个标志!
windows下:C:\users 下 .gitconfig文件可以看到属性
git config --global user.name "xxxxx"
git config --global user.email "xxxxxxx"
二、使用
#初始化版本库:
git init
#查看文件状态:
git status
#将文件/目录添加到临时暂存区中:
git add 文件名/目录名
#注意:以上通过git add命令的文件会提交到暂存区中,但是这里的文件其实没有真正的提交!!!
#提交文件(所有暂存区都提交):
git commit -m "提交提示信息"
#注意:每当有文件被修改/添加/删除的时候,都需要重新git add,然后再git commit
#查看日志:
git log
#查看日志简单版:
git log --pretty=online
#回退到上一次提交:
git reset --hard HEAD^1
#注意:HEAD是一个指针,永远指向最新版本,^1表示让HEAD指针指向上一个版本
--hard 硬:这种问题不但将版本回顾,还会将指定的数据抹除,不会保留任何修改的记录
--soft 软:会保留修改记录,并且自动git
--mix 折中:保留修改记录,不会git
#修改HEAD位置:
git reset
#注意:这种方式可以恢复到之前某个提交的版本,但是恢复之后,当前版本之后的版本将不复存在!
#回退到多个版本:
git reset --hard HEAD~2 #表示回退到2个版本之前的版本
#版本穿越(查看历史记录的版本号)
git reflog
4f89574 (HEAD -> master, origin/master) HEAD@{0}: commit: 后端CRUD实现完毕
9933cef HEAD@{1}: commit: 后端基本完成
f71392a HEAD@{2}: commit: 管理员读者注册登录完成以及拦截器监听器实现完毕以及修改密码功能
9fadf55 HEAD@{3}: commit: Service层编写完毕
9d23519 HEAD@{4}: commit (initial): 项目框架大致搭建完毕
git reset --hard 4f89574
#还原文件
git checkout 文件名称
#删除文件
git rm
三、工作区、暂存区、本地库
#工作区(Working Directory):电脑的本地磁盘目录
#本地库(Repostory):工作区中有一个.git目录
#暂存区(stage):一般存储在git目录下的index文件,有时也叫索引
四、分支
项目已经上线了,但是产品经理又提出了新的需求,评估实现这个新功能需要2个月实现。但是项目还需要继续运行,时不时修改bug,如何管理这几个版本。
#查看分支
git branch -v
#创建分支
git branch xxx
#切换分支
git checkout 分支名
#合并分支
git checkout master
git merge 分支名
五、冲突
冲突一般指在同一个文件同一个位置的代码,在两种版本的仓库合并时,版本的管理软件无法判断到底保留哪一个版本!冲突一般需要手动解决!
#切换到文件的目录中,查看文件
#再重新add和commit即可!
六、推送及下载
#推送代码到远端
git remote add orign <url>
#下载库到本地
git clone <url>