git / 协同开发常用指令

下载好git后首先需要配置个人信息

#查看当前用户配置
git config --global  --list

#配置用户名和邮箱
git config --global user.name "你的姓名"
git config --global user.email "你的git邮箱"
git config --global user.password "你的git密码"

如果想使用SSH方式下载代码需要配置SSH

1.生成SSH秘钥

#生成SSH秘钥
ssh-keygen -t rsa -C "你的git邮箱"
#一路回车,记住秘钥保存路径(/c/Users/XZL/.ssh/id_rsa),不用设置密码

2.在秘钥保存路径下会生成两个文件
在这里插入图片描述
3.在github或者gitlab中配置秘钥,将上图id_rsa.pub文件中的内容复制到下图Key中,取个名称,点击Add Key就可以了
在这里插入图片描述
4.更具体的细节可自行百度或者参考这篇博客:
https://blog.csdn.net/lqlqlq007/article/details/78983879

所有信息配置好以后就克隆代码了

git clone https://github.com/vuejs/vue.git

远程仓库一般有master和dev两个分支,可以在本地也创建两个同名分支,并分别跟踪

#查看本地分支
git branch
#查看远端分支
git branch --remote
#查看远端和本地分支
git branch --all

#创建本地分支dev
git branch dev
#切换到本地分支dev
git checkout dev
#创建并切换到本地分支dev
git checkout -b dev

#查看分支追踪
git branch -vv
#设置本地分支dev追踪远端分支dev
git branch --set-upstream-to=origin/dev dev

开发之前要先拉取最新代码

#同步远程仓库dev的最新代码到工作区
git pull origin dev

#同步远程仓库dev的最新代码到本地仓库
git fetch origin dev
#将远程仓库dev的代码合入到当前本地分支
git merge origin/dev

接下来就可以开始开发然后提交自己写的代码了

#提交新增文件和被修改文件到暂存区,不包括被删除文件
git add .
#提交被修改文件和被删除文件到暂存区,不包括新增文件
git add -u
#提交所有变化到暂存区
git add -A

#将暂存区的改动提交到本地仓库
git commit -m '本次提交描述'

#把本地仓库的分支dev同步到远程仓库
git push origin dev

当所有的小伙伴都开发完成后,需要有一个人来把dev分支上所有的commits都合入到master上打包测试

#切到本地dev分支
git checkout dev
#拉取dev分支最新代码
git pull origin dev
#将远程仓库dev的所有commits合入到当前本地分支(dev)
git merge origin/dev
#切到本地master分支
git checkout master
#拉取master分支最新代码
git pull origin master
#将本地仓库dev分支的所有commits合入到本地仓库master分支
git merge dev
#将合并过来的所有commits同步到远程仓库master分支
git push origin master

其他命令

#查看修改状态
git status

#查看远程下载的代码与本地的不同
git diff dev

#将远程仓库dev的代码同步到本地仓库dev分支上
git fetch origin dev:dev
#若当前所处的本地分支是dev,则冒号之后的内容可以省略
git fetch origin dev

#删除本地分支dev
git branch -d dev
#删除远程分支dev
git push origin --delete dev

#忘记我当前的本地分支上的一切,使它与origin/master完全相同
git fetch --all
git reset --hard origin/master

开发整理

查看当前用户(global)配置
git config --global  --list


配置用户名和邮箱
git config --global user.name "Guoyy"
git config --global user.email "guoyuanyuan@zailingtech.com"
git config --global user.password "Guoyy123456"

配置SSH
ssh-keygen -t rsa -C "guoyuanyuan@zailingtech.com"
路径
(/c/Users/XZL/.ssh/id_rsa)
参考
https://blog.csdn.net/lqlqlq007/article/details/78983879

克隆代码
git clone git@git.wxbtech.com:as/WXB/web-ui/report.git、

创建分支
git branch ****

切换本地分支(没有则创建)
git checkout master

查看本地分支
git branch
查看远端分支
git branch --remote
查看远端和本地分支
git branch --all
更新远程的分支到本地
git remote update origin --prune

删除本地分支: git branch -d dev
强制删除本地分支: git branch -D dev

查看分支追踪
git branch -vv
设置分支追踪
git branch --set-upstream-to=origin/dev dev

## 在本地新建一个temp分支,并将远程origin仓库的master分支代码下载到本地temp分支;
$ git fetch origin master:temp
## 比较本地代码与刚刚从远程下载下来的代码的区别;
$ git diff temp
## 合并temp分支到本地的master分支;
$ git merge temp
## 如果不想保留temp分支,删除;
$ git branch -d temp

提交(到暂存区)新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
git add .
提交(到暂存区)被修改(modified)和被删除(deleted)文件,不包括新文件(new)
git add -u
提交(到暂存区)所有变化
git add -A

提交代码
git commit -m 'some comments'

#忘记我当前的本地分支上的一切,使它与origin/master完全相同
git fetch --all
git reset --hard origin/master
	

更新远程分支
git remote update origin --prune

git cherry-pick ba61fe817eafca2ff9f040329b9517c24587595c^..8a6007c755decf5c2f60dc0acc99c67f1dc8f42f 
git cherry-pick 8a6007c755decf5c2f60dc0acc99c67f1dc8f42f
ba61fe817eafca2ff9f040329b9517c24587595c


撤销:
git reset --soft HEAD~1 撤回最近一次的commit(撤销commit,不撤销git add)
git reset --mixed HEAD~1 撤回最近一次的commit(撤销commit,撤销git add)
git reset --hard HEAD~1 撤回最近一次的commit(撤销commit,撤销git add,还原改动的代码)

撤销某次push(回退到这个commit)
git reset --hard be209dedf47fe7c2629a6cae6e9d25294fcb9793
git push origin HEAD --force

解决常见错误
提交时报错报错:pre-commit hook failed    
解决:git commit -m "message info" --no-verify

上线流程使用git:
https://blog.csdn.net/zl1zl2zl3/article/details/94019526
https://www.jianshu.com/p/26d050497abb

vscode中使用git的参考文档:
https://juejin.im/post/6844903607976853512

参考博客

https://blog.csdn.net/zl1zl2zl3/article/details/94019526
https://www.jianshu.com/p/26d050497abb
https://juejin.im/post/6844903607976853512
https://www.cnblogs.com/wangiqngpei557/p/6056624.html
https://learngitbranching.js.org/?locale=zh_CN

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值