Git教程
一、创建版本库
1、选择一个合适的地方,创建一个空目录:
mkdir learngit
cd learngit
pwd
其中pwd是用于显示当前目录
2、把这个目录变成仓库
git init
3、放一个文件放至learngit目录下(子目录也可),再添加至仓库
git add readme.txt
4、把文件提交至仓库
git commit -m "备注说明"
二、版本回退
在开始教程之前,往仓库添加三次readme.txt,内容和备注如下:
1、查看历史记录
git log
查看简化版历史记录
git log --pretty=oneline
HEAD是指当前版本,上一个版本是HEAD^,上上个版本是HEAD^^,当然往上100个版本写成HEAD~100,前面的efc……是指版本号
2、回退上一版本
查看当前版本内容
cat readme.txt
回退上一版本
git reset --hard HEAD^
再查看当前版本库状态
已回退
3、向前进一个版本
首先网上找append GPL的版本号,是efc0...
git reset --hard efc0
版本号只要写前面几位就好,没必要写全,git会自动寻找
以上是命令行窗口还没关闭,可以直接查看版本号,倘若关闭了,可以查看每次使用的命令
由此可见,append GPL的版本号为efc0...
4、场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- 文件名。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD 文件名,就回到了场景1,第二步按场景1操作。
三、删除文件
1、直接删除文件管理器的文件
rm 文件名
此时,仓库知道你删除了文件,可以用git status查看状态
2、删除仓库文件
git rm 文件名
3、若删错了文件管理器的文件,仓库还有,可以用
git checkout -- 文件名
来恢复,意思是将仓库最新版本替换工作区的版本
四、分支管理
1、查看分支:git branch
当前分支前会有一个*
2、创建分支:git branch <name>
3、切换分支:git checkout <name>
4、创建加切换分支:git checkout -b <name>
5、合并某分支到当前分支:git merge <name>
6、删除分支:git branch -d <name>
五、bug分支
当你遇到一个bug,想要修复,但是返现dev上的东西还没有提交。
但是你暂时还不能提交。这是需要暂存现场,用git stash
之后,自己重新创建一个分支,修复bug后合并分支,然后删除分支。
这是回到分支dev,归还现场,有两个办法:
一是用git stash apply
恢复,但是恢复后,stash内容并不删除,你需要用git stash drop
来删除;
另一种方式是用git stash pop
,恢复的同时把stash内容也删了:
六、