git 总结

git是一个开源的分布式版本控制系统。用于高效敏捷的管理大小项目代码。

什么是分布式和集中式呢:
  集中式 : 代码集中管理,需要上传到中央服务器。每次更新都从中央服务器下载。 (svn)

  分布式 : 每个节点都保存完整的代码,没有中央服务器。节点之间相互推送下载完成代码共享。 (git)

git的特点:

  *git可以管理各种文件,特别是代码项目,多在unix系统中使用
  *是分布式管理,不同于集中式,这个git和svn的核心区别
  *git可以更好的支持分支,方便多人协同工作
  *git分布式代码更安全,有全球唯一的commit版本号
  *git是开源的系统
  *使用git可以脱网工作,且数据传输速度较快

Git配置:

  用git config配置 Git,要做的第一件事就是设置名字和邮箱地址:

  一共分层:有系统上的所有用户,有当前用户和当前项目仓库

$ git config --system user.name "zengsf"
$ git config --system user.email fengshao@163.com

  配置好了,如果要查看配置内容,想要找到相对应的文件的话,它们分别在/etc/gitconfig, ~/.gitconfig, .git/config中,当然也可以利用命令来查看,git config --list

git命令:

  git init------初始化仓库,之后会在目录中自动生成.git目录

  git status------查看分支状态,默认是在master中工作

  git add [file]------文件提交到暂存区,如果用*号是提交所有文件,多个文件是用空格分开

  git rm --cached [file]------删除暂存区文件提交记录,用*号表示所有文件

  git commit -m "message"------提交暂存区的文件到本地仓库

  git log,git log --pretty=oneline,git reflog------都是查看日志,只不过还是有点区别

工作区的命令:

  git diff file------查看当前文件和已提交内容的差别

  git checkout file------从本地仓库恢复文件,一般是误删之后使用

  git mv file dir------将本地文件移动到某个文件夹中

  git rm file------将本体文件删除

  git checkout --file------丢弃工作区的修改

版本控制命令:

  git reset --hard HEAD^------回到上一个版本,如果想要回到前两个版本,就在HEAD后面用两个^^

  git reset --hard commit_id------回到指定版本,这里用git reflog配合好使用

标签管理:
  git tag v1.0 [-m "message"]------创建一个位v1.0的标签

  git tag v1.0 commit_id------指定commit_id打标签

  git tag,git show v1.0------前者是列出当前标签,后者是显示标签的具体信息

  git tag -d v1.0------删除标签

  git reset --hard v1.0------前往到v1.0中的标签版本

临时工作区操作:

  git stash------创建保存临时工作区

  git stash list------查看保存的工作区

  git stash apply stash@{n}------应用哪个工作区

  git stash drop stash@{n}------删除指定的工作区

  git stash clear------清空临时的工作区
分支操作:
  git branch------查看当前分支,注意前面带*号的分支代表当前正在工作的分支

  git branch [name]------创建新的分支,注意在创建分支前尽量保持当前分支是干净点,减少冲突发生

  git checkout [name]------切换工作分支

  git checkout -b [name]------创建并切换新的分支

  git merge [name]------将某个分支合并到当前分支

  git branch -d [name],git branch -D [name]------删除分支,-D强制删除没有合并的分支

posted on 2018-09-26 20:30  zengsf  阅读(173)  评论(0编辑  收藏  举报

导航