git,掌握这些就够了
2017-10-12 15:39
405 查看
作为一个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 checkoutcommit_id <file.name>【恢复提交id的指定文件名】 -- git reset --hardcommit_id 【恢复全部文件,直接还原版本】 -- git reset --hard HEAD^【会退到前面一个版本】 -- git reset --hard HEAD^【指定回退几个版本】 -- git reflog【显示出全部提交的版本comitId】 九:git同步到远程仓库
4000
-- 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分支到仓库 -- gitpush originnewBranch 【默认仓库为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工具】
十六:创建博客 附上传送门:http://cyzus.github.io/2015/06/21/github-build-blog/ 如有bug,敬请指出,共同进步~ ^_^
一:下载并安装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 checkoutcommit_id <file.name>【恢复提交id的指定文件名】 -- git reset --hardcommit_id 【恢复全部文件,直接还原版本】 -- git reset --hard HEAD^【会退到前面一个版本】 -- git reset --hard HEAD^【指定回退几个版本】 -- git reflog【显示出全部提交的版本comitId】 九:git同步到远程仓库
4000
-- 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分支到仓库 -- gitpush originnewBranch 【默认仓库为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工具】
十六:创建博客 附上传送门:http://cyzus.github.io/2015/06/21/github-build-blog/ 如有bug,敬请指出,共同进步~ ^_^
相关文章推荐
- git使用手册,有这些就够了^_^
- makefile掌握这些就够了
- MySQL对表的操作,掌握这些整理就够了吧
- 掌握这些MySQL技能,就够了.....赶紧让老板给你涨工资
- 【线性代数】矩阵、向量、行列式、特征值与特征向量(掌握这些概念一篇文章就够了)
- 最实用的Java数组算法,工作面试掌握这些就够了
- 使用git掌握这些命令就够啦
- Makefile经典教程(掌握这些足够)
- 转载:Makefile经典教程(掌握这些足够)
- Makefile经典教程(掌握这些足够)
- Java程序员从阿里、京东、美团面试回来,这些面试题你能掌握多少呢?
- 招聘季福利:掌握这些诀窍,面试成功率增加60%
- Makefile经典教程(掌握这些足够)
- Java程序员从阿里、京东、美团面试回来,这些面试题你能掌握多少呢?
- 一文快速掌握 Git 用法(Git介绍及使用流程)
- Git 学习看这篇就够了!
- 掌握了这些东西才算真正掌握了Javascript(一)。
- 掌握这些电脑知识,你可以玩的很无耻(暴强)
- 你很熟悉CSS,却没掌握这些CSS技巧
- Firefox vimperator快捷键(掌握这些就可以丢鼠标了)