Git基本安装

Linux中安装Git

  1. sudo apt-get install git

Mac中安装Git

首先安装homebrew,然后通过homebrew安装Git,具体方法请参考homebrew的文档:http://brew.sh/

  1. brew install

Windows中安装Git

直接安装Git



创建本地仓库

  1. # 创建文件夹
  2. mkdir hello-git
  3. # 改变工作目录到hello-git
  4. cd hello-git
  5. # 初始化Git相当将文件夹升级为仓库
  6. git init
  7. # 查看当前文件的树结构
  8. tree -a

将文件添加到版本库

创建一个文件,并在文件中写入内容

  1. # 创建一个文件并将Step01 Create File写入文件
  2. echo 'Step01 Create File' >> README.md
  3. # 查看当前目录下的文件
  4. ls
  5. # 查看文件中的内容
  6. cat README.md
  7. # 查看一下版本库的状态
  8. git status
  9. # 将文件添加到版本库,文件进入了git的跟踪范围。之后对文件的任何操作都是可以回退的
  10. git add README.md
  11. # 删除文件
  12. # rm -f README.md
  13. # 从缓存区检出文件
  14. git checkout README.md
  15. # 查看文件
  16. cat README.md
  17. # 查看一下版本库的状态
  18. git status
  19. # 取消添加到缓存区的文件,取消git的跟踪
  20. git rm --cached README.md
  21. # 查看一下版本库的状态
  22. git status
  23. # 添加多个文件跟踪
  24. # 添加本目录下所有文件,这个代码具备递归文件夹功能
  25. git add .
  26. # 查看一下版本库的状态
  27. git status
  28. # 创建一个文件并将test写入文件
  29. echo 'test' >> dist.js
  30. # 查看一下版本库的状态
  31. git status
  32. # 忽略文件如何写
  33. # 为了使用 add .的时候忽略某一个文件,可以在目录下创建一个 .gitignore文件
  34. # 创建忽略配置文件
  35. echo 'dist.js' >> .gitignore
  36. # 查看当前目录下的文件
  37. ls
  38. # 查看当前目录下的所有文件
  39. ls -a
  40. # 查看一下版本库的状态
  41. git status
  42. git add .
  43. git status

提交代码commit

  1. # 提交代码到git仓库,使用的提交描述是add README.js
  2. git commit -m 'add README.js'
  3. # git commit -am 'add README.js',也可以使用,a代表add的意思
  4. git status
  5. # 查看提交记录,查看之后,通过:q退出查看页面
  6. git log

保存临时工作成果Stash

在你需要并行做好几件事的时候,比如你正在开发一个功能程序开发到一半,有一个紧急的bug需要处理又或者你突然对另外一个新特性来了思路,但是你现有的代码还在一个中间状态甚至编译都有问题。你需要可定需要一个功能保存现在的工作现场,然后去干另外一件事。这个时候stash功能就可以帮助你解决。

  1. # 建立一个临时的工作成果
  2. echo 'TEMP xxxx' >> README.md
  3. # 查看文件
  4. cat README.md
  5. git status
  6. # 保存工作现场到栈
  7. git stash
  8. git status
  9. # 查看文件
  10. cat README.md
  11. # 从栈中弹出工作现场
  12. git stash pop
  13. # 查看文件
  14. cat README.md
  15. git status
  16. # 放弃修改
  17. git restore README.md
  18. # 查看文件
  19. cat README.md

回退到上一个提交

首先修改一下文件,再做一次提交

  1. echo 'STEP02 ADD FUN01' >> README.md
  2. # 参数-a 是先添加到缓冲区再提交的意思
  3. git commit -am 'README ADD STEP02'
  4. # 查询提交日志
  5. git log
  6. # 查看文件
  7. cat README.md
  8. # 只是版本回退 不更新工作区
  9. git reset HEAD^
  10. # 不但版本回退 也会更新工作区(文件目录)的文件到上一个版本,这个是一般情况下的选择
  11. git reset --hard HEAD^
  12. # 查看文件
  13. cat README.md
  14. git log –-oneline # 简短日志
  15. git reflog # 操作记录 包括回退记录也会被显示

image.png

工作区(Working Directory)、缓存区(Stage)、版本库(Repository)小结

  • 工作区 —- 就是文件目录因为你的开发工作就是对文件的修改所以叫做工作区
  • 缓存区 —- 没有提交前也就是没有完成工作结果代码保存的地方
  • 版本库 —- 每一个工作结果的时间带会被按照不同的提交记录保存起来

分支管理