git初始化及仓库创建和操作及版本回退

git初始化及仓库创建和操作

步骤一: 安装
官网下载地址: http://git-scm.com/download
步骤二:1、设置用户名,全局配置:git config – global user.name ‘注册用户名’;
   2、设置用户邮箱,全局配置:git config --global user.email ‘注册邮箱’;
    3、查看git配置信息 ,校验是否成功 git config --list;
步骤三:初始化git仓库,创建成功后,到对应文件夹下查看即可
1、创建文件夹test:mkdir test
2、进入创建的文件夹: cd test
3、git初始化:git init
4、创建文件readme.txt : touch ‘readme.txt’
5、编辑文件:vi readme.txt
提示:编辑完后保存并退出:先按esc,再按wq
6、添加到缓存区:git add ‘readme.txt’
可:查看状态:git status
7、将文件从缓存区提交到仓库:git commit -m ‘创建readme.txt’
可:查看git状态:git status
8、修改文件内容:vi readme.txt
可:查看git状态
9、重新添加至缓存区:git add ‘readme.txt’
10、重新提交到仓库:git commit -m ‘修改readme.txt’
可:查看git状态
11、删除的话,rm -rf readme.txt

版本回退

基于^ (只能后退) 一个^代表回退一步
基于~(后面加几就回退几步)
基于索引值(推荐,可后可前)

很多次修改如何准确回退?版本控制系统肯定有某个命令可以告诉我们历史记录,在Git中,我们用git log命令查看:

$ git log

显示从最近到最远的提交日志。
内容太乱?可以试试加上–pretty=oneline参数:
$ git log --pretty=oneline
友情提示:你看到的一大串类似1094adb…的是commit id(版本号),和SVN不一样,Git的commit id不是1,2,3……递增的数字,而是一个SHA1计算出来的一个非常大的数字,用十六进制表示,而且你看到的commit id和我的肯定不一样,以你自己的为准。为什么commit id需要用这么一大串数字表示呢?因为Git是分布式的版本控制系统,多人在同一个版本库里工作,如果大家都用1,2,3……作为版本号,那肯定就冲突了。
好了,现在我们启动时光穿梭机,准备把文件回退到上一个版本,怎么做呢?

首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交(注意我的提交ID和你的肯定不一样)。

现在,我们要把当前版本回退到上一个版本,就可以使用git reset命令:
$ git reset --hard HEAD^

看看readme.txt的内容是不是所需要的:
$ cat readme.txt
现在我们用git log再看看现在版本库的状态:
$ git log

最新的那个版本已经看不到了!好比你从21世纪坐时光穿梭机来到了19世纪,想再回去已经回不去了,肿么办?

办法其实还是有的,只要上面的命令行窗口还没有被关掉,你就可以顺着往上找啊找啊,找到那个commit id,就可以指定回到未来的某个版本:

$ git reset --hard xxxx

再看看readme.txt的内容:
$ cat readme.txt

果然,我胡汉三又回来了。

了解一下:Git的版本回退速度非常快,因为Git在内部有个指向当前版本的HEAD指针,当你回退版本的时候,Git仅仅是把HEAD的指向改了,然后顺便把工作区的文件更新了。所以你让HEAD指向哪个版本号,你就把当前版本定位在哪。

但如果,你回退到了某个版本,关掉了电脑,第二天早上就后悔了,想恢复到新版本怎么办?找不到新版本的commit id怎么办?

Git提供了一个命令用来记录你的每一次命令:
$ git reflog
从输出可知,你又可以乘坐时光机回到未来了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值