git常用命令总结

作为一个coder,git版本管理是得必知必会的。但我们并不需要全部的掌握,在公司里,掌握以下这些将是足够用的。
* 下载并安装git。传送门:https://git-scm.com/downloads
* git基本设置

--- 建立一个仓库
--- cmd中,git clone url  【到某文件夹下】
--- git config --global user.name  【设置用户名】
--- git config --global user.email  【配置邮箱】
--- git config --list【查看所有配置项】
--- git config  --help 【查看git配置帮助】
  • git分为三个区
--- 工作区【修改当前的文件,可以提交到暂存区】
--- 暂存区【作用:过渡层、避免误操作、保护工作区和版本区。可以提交到版本区】
--- 版本区【 从暂存区提交到的版本,记录一个commit】
  • git提交到版本区命令文件
--- git status 【查看工作区,暂存区,版本区状态】
--- git add -name【将某个文件或文件夹添加到暂存区】
--- git add . 【将所有改动的文件提交到暂存区】
--- git commot -m "说明提交变动等"【将暂存区的文件提交到版本库,并写上注释】
--- git commit -a -m "说明提交变动等" 【将工作区的文件添加到暂存区并且提交到版本库,并写上注                                                                 释】
  • 各个区不同文件的对比
--- git diff 【是工作区和暂存区之间的对比】
--- git diff --cached/--stated【暂存区与版本区之间的对比】
--- git diff master【工作区与版本区之间的对比】
  • git撤销操作
--- git reset HEAD <file.name> 【将暂存区文件撤回到工作区】
--- git checkout -- <file.name> 【将工作区文件撤销回为最新版本区的文件】          
--- git commit -m "说明提交变动" -amend【有漏提交的文件,将版本区已经有的文件给重新撤销回来,重                                                          新全部提交回来】  
  • git删除操作
--- git rm <file.name>  【从暂存区删除文件,此时工作区文件也删除了,否则会报错】
--- git rm -f <file.name>【从暂存区中删除文件,此时工作区文件也会被强制删除】
--- git rm --cached <file.name>【工作区有文件,暂存区也有文件,只会将暂存区的文件删除掉】
  • git恢复操作
--- git checkout commit_id <file.name>【恢复提交id的指定文件名】
--- git reset --hardcommit_id 【恢复全部文件,直接还原版本】
--- git reset --hard HEAD^【会退到前面一个版本】
--- git reset --hard HEAD^【指定回退几个版本】
--- git  reflog【显示出全部提交的版本comitId】
  • git同步到远程仓库

    --- git remote 【查看远程仓库的名字,默认是origin】
    --- git remote -v 【查看远程仓库的地址】
    -- git push origin master 【将版本提交到远程仓库】          
  • git多人协作冲突

   在项目的settings里的collaboration 
   在另一个项目参与者提交到git上时,代码不一致会出现冲突。
    解决办法
          --- git fetch 【将远程仓库取过来放在内存中】
          --- git diff master origin/master 【查看远程仓库和本地的版本区的差别】
          --- git merge  orgin/master【将远程版本和本地仓库进行合并,然后人进行修改,再提交到gitv                                                                           上】
         - -- git pull 【直接将代码提交到git仓库出上】
  • 开源项目的协作
 fork  【想参与别人的项目构建,先fork别人的以下,到自己git项目目录下,然后拉去到本地,再同步到git                                                          仓库上】
pullrequest 【在拉取请求页面中,写下你pull request哪个地方就行,等待对方回应在小的项目当中,直接                                                                     在网站上更改文件,进行commit就可以了,在去pull request】
  • git分支
--- git branch  【查看分支,默认是一个master主分支】
--- git branchnewBranch【创建一个新分支】
--- git branch -d newBranch【删除分支操作.没有合并到主分支上的,删除时会报错】
--- git branch -D newBranch【强制删除分支,包括没有合并到主分支上的】
--- git branch merged  【在主分支上,查看已合并的分支】
--- git branch no-merged  【查看没有合并的分支】
--- git checkoutnewBranch【切换到新的分支上】   
--- git checkout –b newBranch创建【一个新的分支,并且切换到新的分支】
--- git merge  newBranch【切换到主分支上,选择和某个分支进行合并】
会在相同代码不一样的地方,会让你选择选择哪一种,比如 两处均为 a = 1 ,a = 2
  • git分支到仓库
 --- git push origin newBranch 【默认仓库为origin,切换到分支上,提交到远程仓库上】
github也可以直接创建【打开项目,在紧挨着项目文件的branch上】
  • github的标签
 ---git tag【打标签, git tag   v1.0  git push origin v1.0  将标签打包到git上,相当于压缩包】
也可以在github上直接创建,在releases里.
  • githut如何退出git log 和git commit后的vim编辑器
---git log后【按q,然后按回车】
---git commit后【先按ESC键,再按:wq键即可退出】
  • github如何在分之下创建子分支
---git checkout -b newBranch parentBranch
  • github如何查分支图
 ---git log --graph --decorate --oneline --simplify-by-decoration --all
 ---decorate 标记会让git log显示每个commit的引用(如:分支、tag等) 
             --oneline 一行显示
             --simplify-by-decoration 只显示被branch或tag引用的commit
             --all 表示显示所有的branch,这里也可以选择,比如我指向显示分支ABC的关系,则将--all替换为branchA branchB branch】
 ---gitk --simplify-by-decoration --all【或者调出gitk工具】
  • 更改本地分支的名字
---git branch -m oldBranch newBranch 【更改本地分支的名字】
  • 创建博客
附上传送门:http://cyzus.github.io/2015/06/21/github-build-blog/

如有bug,敬请指出,共同进步~ ^_^

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值