1.github的安装与使用
Ubuntu Git安装与使用
2.教程
创建版本
cd ~/
mkdir my_github
cd ~/my_github
git init
编辑文件:
cd ~/my_github
echo "this is version 1.0" >> readme.txt
cat readme.txt //显示内容
添加到仓库队列(可以添加多个文件再用commit命令更新)
git add readme.txt
更新到仓库,双引号中字符串是对这次个更新的注释
git commit -m "It is version 1.0 "
修改readme.txt
echo "This is version 1.1" >> readme.txt
使用git status查看仓库变更状态
git status
结果:
使用git diff 查看变更内容
git diff readme.txt
注:如果git status告诉你有文件被修改过,用git diff可以查看修改内容。
使用git log 回顾历史版本
git log
也可以使用简单显示:
git log --pretty=oneline
版本回朔
参考:版本回退
git reset --hard HEAD^ //退回上版本
git reset --hard HEAD^^ //退回上上版本
git reset --hard 542b9 //退到某一版本
查看历史操作过的版本
git reflog
3.git的工作区和暂存区
Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。
名词解释:
工作区(Working Directory)就是你在电脑里能看到的目录
版本库(Repository)工作区有一个隐藏目录.git
,这个不算工作区,而是Git的版本库。
撤销修改 git checkout
这里可以分为两种情况:
1.修改后暂未执行git add
echo "checkout test: before add" > readme.txt
git status
因此可以执行如下,以撤销修改,回到了上次commit后的状态
git checkout -- readme.txt
2.修改后执行git add(未执行git commit -m),又修改了文件
echo "checkout test:after add " >>readme.txt
git add readme.txt
echo "checkout test: change again">>readme.txt
可以发现"checkout test:change again"被撤销,即回到了add后的状态
git checkout 小结:
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file
。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>
,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。
版本库中删除文件git rm
rm readme.txt
git status //查看变更
git rm readme.txt
可以发现readme.txt被删除
如果要回复文件可以执行 git checkout,也可以用 git log 和 git reset -- hard ***