Git常用命令

ssh

# ssh公钥生成
ssh-keygen -t rsa -C "邮箱"
cat ~/.ssh/id_rsa.pub

# 初始化git
git config --global user.name "用户名"
git config --global user.email "邮箱"

分支

# 显示本地分支(绿色代表当前所在的分支)
git branch
# 显示本地分支和远程分支,远程分支会用红色表示出来(如果你开了颜色支持的话)
git branch -a
git branch -r 仅显示远程分支

# 当仓库增加或删除了分支,而本地没有刷新出来,用这命令更新
git fetch origin --prune

# 切换分支
git checkout xxx(分支名称)

# 创建本地分支(以develop克隆)
git checkout develop
git checkout -b feature/3.6.0-1.2 develop

# 提交分支到远程仓库
git push origin feature/3.6.0-1.2

#删除本地分支(如果在当前分支会删除失败)
git branch -d feature/3.6.0-1.2

# 删除远程分支
git push origin -d feature/3.6.0-1.2

提交代码

# 更新代码(提交前先更新)
git pull orgin master

# 查看改动过的文件(红色代表改动过的文件)
# 补充:改动过的文件或没在暂存区的文件,称为untracked文件
git status

# 取消对文件的改动
git checkout -- src/test/java/Test.java

# 添加所有改动过的文件到暂存区(. 换成文件全路径,则可以指定添加的文件)
# 补充:暂存区staged,添加到staged的文件称为tracked文件
git add .
git add src/test/java/Test.java

# 查看添加到暂存区的文件(绿色代表已添加到暂存区的文件,没添加是红色)
git status

#撤销所有添加到暂存区的文件(HEAD+文件全路径,则可以指定撤销的文件)
git reset HEAD

# 提交代码到本地仓库
git commit -m ‘这里写注释’

# 撤销提交到本地仓库的代码
1.git log(找到commit的id)
2.git reset --soft id(不会对代码修改进行撤销,可以再通过git commit 重新提交)
3.git status(撤销成功可以看到已暂存区的文件,没撤销之前是空文件)
# 补充:如果仍是空文件,且要撤回的是最近一次提交,则2换成git reset --soft HEAD^

# 推送到远程仓库
git push origin master

# 回滚远程仓库(慎重操作)
# 补充:下面命令仅回滚最后一次提交,回滚后会删除之前的提交
1.git revert HEAD
2.git push origin master

合并&冲突

# 合并代码到develop
1.git checkout develop
2.git pull origin develop	# 合并前先更新
3.git merge --no-ff feature/3.6.0-1.1 develop
4.git push origin develop

# 解决冲突
git merge --no-ff feature/3.6.0-1.2 develop
# 用idea或sourcetree对比前后版本修改,然后再提交代码到develop
1.git pull origin develop
2.git status
3.git add .
4.git commit -m ‘解决冲突’
5.git push origin develop

贮藏stash

# 功能开发在错的分支上,实现提交到另一个分支,错的分支不提交
1.把所有改动放到暂存
git add .
2.把暂存的文件提交到git的暂存栈
git stash
3.切换到正确的分支
git checkout feature/3.6.0-1.2 
4.将暂存栈中的代码放出来
git stash pop

# 还没开发完,不想提交代码,但有一个紧急BUG需要切换到另一个分支
1.把所有改动放到暂存
git add .
2.把暂存的文件提交到git的暂存栈
git stash
3.切换到需要修改BUG的分支
git checkout develop
4.回到之前没开发完的分支
git checkout feature/3.6.0-1.2
5.将暂存栈中的代码放出来
git stash pop

tag

# 查看所有tag
git tag -l

#创建tag(以master创建)
1.git checkout master
2.git tag -a ccs-release-3.6.0 master -m '需求版本'
3.git push origin ccs-release-3.6.0

# 删除本地tag
git tag -d ccs-release-3.6.0

# 删除远程tag
git push origin :refs/tags/ccs-release-3.6.0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值