Git快速入门与速查

本文介绍了Git的基本概念和用法,能够帮助初学者迅速掌握Git工具的使用。以及GitHub的日常用法。

基本概念

Git是什么?说起Git你可能会知道它是一个版本管理的工具,但究竟什么是版本管理?

举个栗子,假如你要写某个很牛逼的论文,你先写了个稿子A(包含idea1和idea2)。然后过了一天你发现idea1不work了,不能写在论文里了,然后你把idea1的部分全部删掉了,并将稿子A保存为稿子B。然后又过了一天,你发现idea1又可以work了,可以将其重新写入文章里了,于是你需要将之前写过的关于idea1的部分重头写过。。。

是不是很麻烦,不过如果你稍微机智一些,你可以在保存稿子B时选择另存为,那么你就会同时拥有稿子A和B了,后面你就可以方便地直接从稿子A恢复回稿子了。不过当文件一多起来,就会变得很麻烦,想想你的目录下有一堆文件的情形。。。

如果你会使用Git的话,它就能很好地帮你管理这些稿子的“版本”了。可以这么说,你在第一天保存的稿子A是版本A,在第二天删掉了idea1的部分的稿子B是版本B,第三天你就需要将版本B回退到版本A。

是不是听起来很方便呢?嘿嘿嘿。。。

基本操作

安装配置

按照网上的教程,安装好Git,并配置好用户信息,配置SSH等等。

基本用法

打开一个文件夹,点出鼠标右键的菜单,选择“Git Bash Here”,然后就能在此处打开Git的命令行界面了。

本地用法:

1
2
3
git init # git库初始化
git add . # 添加当前目录下的所有文件到缓存区
git commit -m "first commit" # 提交缓存区的所有文件到git里,并附上提交的说明

远程用法(在使用了“本地用法”之后):

1
2
3
git remote add origin [GitHub的上传网址] # 仅第一次需要:添加远端的推送地址
git push -u origin master # 第一次推送到远端用这条,以后不用
# git push # 以后推送到远端都用这条

分支管理

  1. git branch dev:创建名字为dev的分支
  2. git checkout dev:切换到分支dev
  3. git branch:查看分支
  4. 然后和平常一样的add和commit等,这些操作会在当前分支(dev)上进行
  5. git checkout master:切换回master分支
  6. git merge dev:将dev分支合并到master分支上
  7. git branch -d dev:删除dev分支

其他用法

  1. git status:查看状态和提示(例如哪些文件被修改了)
  2. git diff xxx:查看文件xxx被修改了哪里
  3. git log:查看commit的历史记录
  4. git reset --hard HEAD^:回退到上一个版本
    git reset --hard xxxx:回退到指定的版本号(xxxx),版本号是用git log看到的一大串的数字字母字符串(版本号不需要打全,它会自动搜索和匹配前缀)
    HEAD:当前版本
    HEAD^:上一个当前版本
    HEAD^^:上上一个当前版本
    HEAD~100:上100个版本
    注意:回退版本号后,你将看不见你刚才在“未来”的版本,需要使用git reflog查看输入命令的历史记录,例如包括了版本号
  5. git checkout -- thefile:把文件thefile回退到版本库中的状态(即取出版本库中的该文件,并覆盖到工作区)
  6. git rm thefile:从版本库移除thefile文件(需要再commit才能提交更改)
  7. git clone [GitHub某仓库的下载地址]:把仓库克隆到本地
  8. git pull:从远端拉取修改(获取最新的版本到本地)
赏点钱吧(≧∇≦)ノ