Git--基本操作和基本概念

Git是Linux创始人Linus用C语言写的分布式版本控制系统,与之相对的是集中式版本控制系统如SVN,CVS,VSS,但是都比不上Git好用


初始化Git仓库

git init

可以将把这个目录变成Git可以管理的空仓库,并且会形成.git的隐藏文件夹,可以用ls -alh命令查看到


添加文件或者变更的文件到暂存区

git add filename


将暂存区的文件提交到仓库

git commit -m "description"


查看仓库状态

git status

需要知道一些常用的英语意思,以及一些常出现的错误或者提示:链接

如果有文件被修改了,但是忘记修改了什么地方,可以用git diff filename来查看


版本回退

如果有的时候我们提交了修改但是我们后悔了,想要回退到过去的版本

可以先用 git log查看提交的记录,也可以用git log --pretty=oneline,每次提交都有一个版本号,可以理解成提交的记录ID,这个记录ID使用SHA1计算出来的128位的数字(用16进制表示),也可以用git reflog查看这个ID

然后版本回退方式1:HEAD为一个指针,指向最近一次提交也就是当前版本,HEAD^则表示上一次,HEAD^^上两次,HEAD~100上前一百次

git reset --hard HEAD^

版本回退方式2:通过提交记录ID来回退到相应的版本,这种方式更通用,可以回退也可以到新的

git reset --hard commitID


工作区和暂存区

电脑看到的目录就是工作区,可以在工作区里面添加文件,修改删除文件

版本库就是那个文件夹下面的隐藏文件夹.git,版本库里面有暂存区(stage)和分支

git add就是把工作区的文件添加到暂存区里面,git commit 就是把暂存区里面的提交到某个分支

提交只会把暂存区里面的东西提交到分支上去,而不会管工作区的修改


查看工作区的文件和HEAD指针指向的版本(一般指最新版本)的文件的区别

git diff HEAD -- filename


撤销修改

放弃工作区的修改:git checkout -- filename注意只是放弃工作区的修改,已经在暂存区的但是还没提交的不会被撤销

将暂存区的修改放回到工作区,再放弃工作区的修改:git reset HEAD filename,然后git checkout -- filename

如果已经把修改进行了commit了:那就用版本回退,git reset --hard commitID


删除文件

删除工作区的文件:rm filename

删除版本库(暂存区和分支)的文件:git rm filename

恢复工作区的文件:git checkout -- filename

恢复版本库中的文件:git reset --hard commitID回到以前的版本

除非你的文件没有添加到版本库(git add 和git commit 都算添加到版本库中了)中,然后删除了,那么就没办法恢复了


 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值