@[toc]
git操作文档
1.生成ssh公钥
//设置用户名 xxx代表用户名(自定义)
git config --global user.name = "xxx"
//设置邮箱
git config --global user.email = "xxx@xxxx.xxx"
//生成私钥
ssh-keygen -t rsa
或者
ssh-keygen -t rsa -C “邮箱”
出现如下图案,表示公钥生成成功
找到本地user/本机用户名/.ssh 文件
打开 id_rsa.pub 将私钥复制到用到地方(github ,码云,gitlub)
2. 克隆代码
使用git clone 命令拉取代码
git clone xxxx 默认是 master 分支
拉取别的分支代码,使用
git clone -b dev xxx
3. 更新代码
git pull 命令
或者 --rebase 的这里不多做介绍,大家结合实际开始使用
git pull --rebase 命令
4. 提交代码
//将全部改动的文件添加到暂存区
git add .
//将单个文件改动的文件添加到暂存区
git add 文件名
//提交本次代码
//提交暂存区到文件 需要编辑commit信息 建议使用如下命令
git commit
或者
git commit -m “提交信息”
//推送到远程仓库
git push
//推送 xxx 代表 分支名称
git push origin xxx
----------------------出现不想提交到内容--------------------
//撤销本地改动的文件 如改动a.txt 可以使用如下命令撤销改动(注:没有进行add操作)
git checkout -- 文件
如果进行过add 操作 使用以下命令
//撤销add 后的提交使用以下命令
git reset HEAD 文件
5.回退版本
查看git 提交记录
git log
可以查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作)
git reflog
下图是git log
下面介绍下我们开发中最经常使用到代码回退
//软回退,不会删掉自己本地修改的内容
git reset --soft commitID
//硬回退,会删掉自己本地修改的内容
git reset --hard commitID
6.分支
//查看所有分支
git branch -a
//查看当前使用分支(结果列表中前面标*号的表示当前使用分支)
> git branch
切换分支
> git checkout 分支名
//创建分支 newFunctionA
git branch newFunctionA
//切换到 newFunctionA
git checkout newFunctionA
7. 冲突解决
情景,aa/a.txt中的,bb=1
git status
修改本地的aa/a.txt中的,bb=3
在服务器也修改了aa/a.txt,bb=2
提交本地的代码到远程仓库
在服务器执行git pull
此时,发生代码冲突
1 如果希望保存本地改动并拉下最新服务器代码,手动merge
(1)要保留服务器上的修改
git stash
git stash list将当前的Git栈信息打印出来
(2)暂存了本地修改之后,pull内容
git pull
(3)还原暂存的内容
git stash pop stash@{0}
系统自动合并修改的内容,但是其中有冲突,需要解决其中的冲突
(4)解决文件中冲突的的部分
打开冲突的文件 手动解决冲突
终:
给大家介绍一个 好的可视化 git版本工具