GIT 常用命令

/

一、环境:

ssh-keygen -t rsa -C "wang.zhongling@zte.com.cn" 生成本地秘钥(邮箱换成自己的邮箱)

使用cat ~/.ssh/id_rsa.pub查看秘钥

git config --global user.name "wangxiaoer"

git config --global wangxiaoer@qq.com

二、常用命令

2.1回滚:

git reset --hard。删除工作区的代码(所有分支的未commit的都被删除,不只当前分支),撤销commit,撤销git add . 回到上一次commit的状态,但是注意,其他分支的代码,没commit 得也会被删除

git reset --hard 版本号

git reset --hard HEAD~3 # 回退上上上一个版本

git reset --hard HEAD^ //回到上一个版本

git reset --hard bae128 # 回退到某个版本回退点之前的所有信息。
git reset --hard origin/master # 将本地的状态回退到和远程的一样 master分支一样

git reset --hard origin

git回退到某个commit,并且撤回更改

git reset --hard HEAD^ 回退到上个版本

git reset --hard HEAD~3 回退到前3次提交之前

git reset --hard commit_id 退到/进到 指定的commit

git push origin HEAD -- force 强退至远程

git回退到某个commit
要撤回最后一次的commit,但保留对文件的更改,可以使用:
git reset --soft HEAD^

如果要撤回commit并且撤回对文件的更改(慎用,这会丢失最后一次提交后的所有更改),可以使用:
git reset --hard HEAD^

如果需要撤回特定的一个commit,但保留更改,可以使用:

git reset --soft <commit_hash>^

git reset --soft 26ac37448c193c2a4b667c5e4123f3f5613895c9

使用git reset命令撤销add命令:

当我们执行了git add命令将文件添加到暂存区后,如果发现添加的文件有误,可以使用git reset命令将文件从暂存区移除,恢复到上一次commit的状态。

命令格式:git reset HEAD

示例:

git reset HEAD file.txt

2.2git commit --amend 修改commit信息

然后git push

git撤销:

1.git reset --soft 版本号

git reset --soft HEAD^ //回到上一个版本(撤销commit,不撤销git add )------ git reset HEAD 文件名

不删除工作区改动的代码,撤销commit,不撤销git add .

2.git reset --mixed 版本号

git reset --mixed HEAD^ //回到上一个版本

不删除工作区改动的代码,撤销commit,撤销git add .

3.git reset --hard 版本号

git reset --hard HEAD^ //回到上一个版本

删除工作区的代码,撤销commit,撤销git add . 回到上一次commit的状态

4.git reset HEAD 撤销add区所有文件

git stash apply stash@{2}

git push origin HEAD:refs/drafts/

git push origin HEAD:refs/for/master

三流程

2、git stash---------保存本地修改代码

$ git stash

3、git pull -r--------拉取远端最新代码

$ git pull -r

Current branch master is up to date.

4、git stash pop----------恢复步骤2本地代码改动

$ git stash pop

On branch master

Your branch is up to date with 'origin/master'.

Changes to be committed:

(use "git reset HEAD <file>..." to unstage)

4、git status-------查看本地与master有哪些差异

00283350@A25376390 MINGW64 /e/Git_Push/aurotest (master)

$ git status

5、git diff MAINDEV/UTC/pylib/keywords/testcases.py----查看是否为本次要合入的改动点

注:双击需要合入的文件全称,即可复制该文件名(包括后缀)。

00283350@A25376390 MINGW64 /e/Git_Push/aurotest (master)

$ git diff MAINDEV/UTC/pylib/keywords/testcases.py

6、git add MAINDEV/UTC/pylib/keywords/testcases.py-----将要合入代码,添加到待commit列表,文件名中若包含中文需使用\进行转义

00283350@A25376390 MINGW64 /e/Git_Push/aurotest (master)

$ git add MAINDEV/UTC/pylib/keywords/testcases.py

7、查看待commit列表(绿色字体),确认与自己想合入内容一致

$ git status

7、git commit -m "合入信息需符合规范"----------合入信息需符合规范

9、commit成功后,push代码至主分支

相关推荐
和你看星星20 小时前
Git rerere:让重复冲突只解决一次
git
嘻嘻仙人5 天前
Ubuntu中 git上传自己的项目和二次上传一般流程
git·github
Patrick_Wilson5 天前
Squash Merge 的血缘陷阱:为什么删掉的代码又活了过来
前端·git·程序员
沉浸学习的匿名网友5 天前
什么是 .gitignore?为什么每个 Git 项目几乎都离不开它?
前端·git
深海鱼在掘金6 天前
Git 完全指南 —— 第3章:理解工作区、暂存区、版本库三个核心
git
江华森6 天前
Git 基础筑基:从原理到团队协作的全栈实战
git
JakeJiang6 天前
Git 必备命令指南:从日常高频到项目开发实战
git
叫我少年7 天前
Windows 中安装 git
git
深海鱼在掘金12 天前
Git 完全指南 —— 第1章:Git 概览与版本控制演进
git
noravinsc13 天前
关于Git Flow
git