git

Git库在本地有三部分组成:工作区索引区(临时的存储区域),仓库。用户新增、修改等过程都是在工作区 ,用户通过 add 命令增加的文件都会在索引区中,用户通过 commit 命令提交的文件都会在 仓库 中。

工作区恢复

有时候需要对当前工作区的改动恢复到未改动的状态,那么:
git checkout -- <filename>

撤销已提交至索引区的文件

对文件 a.py 程序做了改动,执行:
git add a.py
发现 a.py 仍存在bug,需撤销提交至索引区:
git reset HEAD a.py

版本回退

如果对a.py的文件已经commit 了,而此刻需要上一个版本,或者上几个版本的文件,那么:
git reflog
af8d38c HEAD@{1}: commit: 通用转移数据脚本
17ab7ea HEAD@{2}: commit: 提交造数据脚本的配置脚本
ad548ee HEAD@{3}: commit: 适用于mysqldb的造数据脚本

git reset --hard 17ab7ea # 17ab7ea 是 commit_id, 命令git reflog 返回的第一列
HEAD is now at 17ab7ea 提交造数据脚本的配置脚本

操作分支

查看当前分支(带*号的表示当前分支)
$ git branch
* dev
  master
 创建分支 dev2
 $ git branch dev2
 切换分支到 dev2
 $ git checkout dev2
 创建dev并切换分支为dev
 $ git checkout -b dev
 删除分支dev2
合并分支dev2到当前分支
$  git merge dev2
合并分支dev2到当前分支(强制禁用Fast forward模式——当分支被删除后,分支的信息可以被找到,若不禁用,则无法被找到)
$  git merge --no-ff -m "merge with no-ff" dev2
删除未被合并过的分支 dev3
$ git branch -D dev3

保存当前工作区

开发新功能时,发现上一版本的bug,那么需要保存当前工作区
git stash
而后在上一版本切分支,修复缺陷完事后,恢复当前工作区
git stash pop # 
上述 git stash pop 也可以用一下命令代替:
git stash apply	# 此时用 $ git stash list命令查看,工作区是有东西的
git stash drop	# 此时用 $ git stash list命令查看,工作区是空的

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值