git命令学习笔记

Git是一款分布式的版本控制系统,用来管理我们的项目和代码,常用于敏捷开发当中。

  • git拥有强大的分支管理系统。svn是集中式
  • 一直创建文件的备份,以防代码丢失。
  • 时间旅行,提交的版本可以随时“穿越”,容错率大。
  • 模块化,组件化,每个人管理自己的分支,便于维护。可合并代码,解决冲突。

在学习git命令之前,我们需要先了解几个专有名词:
工作区:用于程序员开发的地方。
暂存区:不保存实体文件,通过id指向每个文件实体。
历史区/版本区:保存了被提交过的各个版本,每次提交都会生成唯一的版本号。
远程仓库:用于协作关系,与协作者分享本地的修改。一般保存可执行的版本。

一、安装:

windows系统下载地址:http://git-scm.com

二、配置用户:

下载完成第一步就是配置用户:
配置用户名:git config --global user.name "你的用户名"
配置邮箱:git config --global user.email "你的邮箱"
配置完成可以用git config --list命令查看是否配置完成

三、初始化本地git仓库:

在需要git管理的文件夹下,初始化本地git仓库:git init
查看状态:git status(红色是工作区,绿色是暂存区),有提示下一步操作。

四、常用命令:

  • git add . (点不能少~):将当前目录的所有的文件提交到暂存区
  • git commit -m "需说明的信息":将暂存区的内容提交到历史区
  • git log:查看提交日志,每次提交对应一个40位的版本号,所以历史区也被称为版本区
  • git reflog:查看全部日志,展现全部的操作。其中,commit,是提交到历史区操作,reset:moving to…是历史区回滚到…版本,reset:moving to HEAD是暂存区回滚上一个版本
  • git diff:工作区和暂存区代码相比较
  • git checkout .(也有个点~):从暂存区将工作区内容覆盖。
  • git reset HEAD:暂存区回滚一轮,只能回滚一轮。一般伴随着git checkout .更新工作区。
  • git reset --hard +版本号:历史区回滚一轮,同时修改了工作区和暂存区。版本号提取一部分即可。

五、关于分支的命令:

工作中涉及到协作,自然就会涉及到分支,这也是git中最强大的部分

  • git branch:查看分支,带*号的是你目前所在的分支。
  • git branch -a:查看所有本地分支和远程分支
  • git branch +分支名:创建一个分支。值得注意的是,创建完分支其实只相当于复制了一份,直到提交一次才算两条不同的分支。
  • git checkout +分支名:切换到指定分支
  • git checkout -b +分支名:创建新的分支并切换到该分支上。
  • git branch -d +分支名:删除分支,需要切换到其他分支才能删除当前分支
  • git merge +分支名:和某某分支合并。合并之前需要git pull拉一下最新代码。合并代码避免不了冲突,需要手动解决冲突。

六、关于远程仓库:

  • git remote add origin(远程仓库别名) +(远程仓库地址):将本地仓库和远程仓库关联起来
  • git remote -v:查看是否关联上了
  • git remote rm origin(别名) 删除关联远程仓库
  • git clone +(远程仓库地址):克隆远程仓库
  • git pull origin master(分支名):把master分支上内容跟新到本地
  • git push (-u) origin master(分支名) 推送到远程仓库 。一般推之前也进行一次,git pull操作。若不想每次推送都输入用户名和密码,可设置git config credential.helper store,永久保存账号。保存账号就对应切换账号,可设置git config credential.helper ‘’

七、忽略特殊文件:

目录中不想提交到远程仓库中时,就创建一个.gitignore文件,把要忽略的文件名写进去,git上传的时候就会自动忽略这些文件。GitHub为我们准备了各种配置文件,参考https://github.com/github/gitignore。例如*.js忽略js文件,node_modules/忽略node_modules文件。

git命令还有很多,以上只是列举了项目最常用的一些命令,应对一般项目没问题了,查找起来相对方便。供大家参考。

    原文作者:求索者
    原文地址: https://segmentfault.com/a/1190000012563401
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞