赞
踩
写这篇文章的时候我正好需要用Git作为版本控制,而且将会用到大量的分支以及操作。
最恐怖的是,之前都用SourceTree作为Git的图形化界面工具,一直没有好好地用Git BASH。这次基本上都是通过在BASH上面操作(虽然有IDEA的图形工具),就好好弄一下BASH命令吧。现在将自己整理的Git的基本操作的内容推上来给大家分享。
具体的例如分支管理策略等等这里就暂时不叙述了。
发文之前说一句:Git是贼好用贼好用的东西。
git init
在pwd
【当前目录】初始化一个Git仓库
git status
查看仓库当前状态,返回的信息如下
ZihaodeMacBook-Pro:test_git SongZihao$ git status
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: .gitignore
no changes added to commit (use "git add" and/or "git commit -a")
如果有提示Changes not staged for commit
则表示一面的文件没有被加入到暂存区
如果出现Changes to be committed
,则表示接下来的文件列表都会在commit
的时候被提交
git diff
<filename>
表示查看<filenname>
中指定的文件的修改情况,具体的异同,指的是本次修改和上次提交的区别
git reset –hard HEAD^
Git用HEAD
表示当前版本,HEAD
会指向当前某个版本的ID(一般是最后提交的版本)。上一个版本就是HEAD^
,上上一个版本就是HEAD^^
,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100
。
使用上面的命令后版本退回之前的:
HEAD is now at c5a0920 add new
如果想要前进,就要用上之前记录的versionID:
git reset –hard<versionID>
注意:版本号写前几位就好,如果前几位有相同的,那就会出错
Git的版本回退速度非常快,因为Git在内部有个指向当前版本的HEAD指针,当你回退版本的时候,Git仅仅是把HEAD
从指向append GPL
:
git-head
改为指向add distributed
:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。