Git学习初始阶段小结
Published on
Last updated on
学习了一个多星期的Git,浅谈一下自己的收获吧
什么是Git
目前对Git的认识,大概是以下几个标签:开源的,分布式的,版本控制系统
那么问题来了,究竟什么是分布式,什么是集中式,什么是版本控制系统?
- 通过目前的学习来看,所谓集中式的版本控制系统(比如CVS和SVN),版本库是集中在中央服务器的,工作时需要从中央服务器取得新版本,工作后再推送到中央服务器
- 分布式版本管理系统则不同,每个人的电脑上都有一个版本库,因此不需要联网就可以使用
Git的安装
安装默认选项一直装,最后完成注意设置:
1 2
| $git config --global user.name "Wyman" $git config --global user.email "159434637@qq.com"
|
创建版本库
初始化
查看
1 2 3 4 5 6 7 8
| $ ls -ah (查看目录下文件) $ git status (掌握仓库当前状态,最好常看,以免有文件未更新) $ git diff (查看修改后状态) $ git log (查看版本信息) $ git log --pretty=oneline (查看版本信息,以精简的形式) $ cat test.txt (查看test的内容) $ git reflog (查看每一次的命令) $ git branch (查看当前分支)
|
提交上传更新文件
1 2
| $git add test.txt (把工作区修改提交到暂存区) $git commit -m "wrote a test file" (把暂存区修改提交到版本库)
|
Git重要操作
版本回退
1 2
| $ git reset --hard HEAD^ (回退到上一个版本) $ git reset --hard 1094a (回退到制定版本,1094a为版本id前几位)
|
撤销修改
1 2 3 4 5 6 7 8 9
| 1.只是在工作区修改,为提交到暂存区: $ git checkout -- test.txt --------------------------------- 2.修改提交到了暂存区: $ git reset HEAD test.txt $ git checkout -- test.txt --------------------------------- 3.修改提交到了版本库,但是未将本地版本库推送到远程库: $ git reset --hard HEAD^ 或 git reset --hard 1094a
|
删除文件
1 2 3 4 5
| $ rm test.txt (此时如果误删了可以用 $ git checkout -- test.txt恢复) $ git rm test.txt $ git commit -m "remove test.txt" (完全删除了也没关系,可以用版本回退)
|