您的位置:首页 > 其它

GIT使用小结

2016-06-30 20:00 417 查看

GIT说明

Git是目前世界上最先进的分布式版本控制系统(没有之一)。

基本上做一个项目GIT已经是必备的素质了。关于GIT的好处百度一下会有一大堆,自己体会下来主要有两点:

团队协作!代码仓库的作用。这样就不用将队友写的代码拷贝来拷贝去,你在打游戏的时候,队友在写代码,写完,同步一下,就可以看见队友写了哪些东西,自己继续干活。

版本控制!这个的重要性在于你写错了可以很方便的回滚到原来的状态。当然好的习惯是,写一点就commit一下。做成一个小版本。就跟打游戏及时存档,打错了在读档一样。、

事实上,我对GIT的理解太小白了!!!!!!

GIT团队协作的一般流程

正确使用GIT的姿势是这样的:

在中央仓库保存两个永久分支,masterdevelop

master分支是发布分支,每次发布就是从master上打包发布,程序是不允许直接在master提交代码,只能通过其他分支合并到master分支。

develop分支是开发分支,当develop上得源代码达到一个稳定状态的时候就可以把develop的代码合并到master上。

除去master和develop这两个永久分支,还存在一些暂时的分支。

线上的紧急Bug需要修复,这个时候就需要创建一个hotfix分支,这个分支是从master上检出,完成修复后双向合并到master和develop上,保证develop与master代码的同步,合并完后删除hotfix 分支。

要开发一个新功能,这个时候需要创建一个feature分支,这个分支就从develop上检出,可以把这个分支推到服务器上让更多地人参与开发,当然也可以不推倒服务器上,只在本地开发,开发完成后合并到develop上。

在实际开发中,我们应该按照几个基本原则进行分支管理:

首先,master分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活;

那在哪干活呢?干活都在dev分支上,也就是说,dev分支是不稳定的,到某个时候,比如1.0版本发布时,再把dev分支合并到master上,在master分支发布1.0版本;

你和你的小伙伴们每个人都在dev分支上干活,每个人都有自己的分支,时不时地往dev分支上合并就可以了。

所以,团队合作的分支看起来就像这样:



Git的常用命令



安利 廖雪峰大大的GIT教程!!

请放弃使用GIT可视化工具!会严重影响你的心情!慢!!!

命令行操作,简单快捷优雅。Windows可以使用git bash. Linux直接敲就可以了

常用命令小结:

git init                    #初始化git
git add filename            #添加一个文件到暂存区
git commit -m "discription" #将暂存区文件提交到本地仓库中
git log                     #查看提交日志,可以很方便的看出版本的id
git log --graph             #查看分支图
git status                  #查看当前工作区的状态
git diff filename           #查看当前工作区文件与仓库中文件的区别
git reset --hard commit_id  #版本回退
git checkout -- filename    #撤销工作区的修改
git rm filename             #删除一个文件
git remote add origin git@github.com:xx/xx.git  #添加远程仓库
git push -u origin master   #第一次推送所有内容
git push origin master      #推送最新的修改
git checkout -b dev        #创建新分支并切换到dev分支上
git checkout master        #切换到主分支上
git branch                 #查看所有分支
git merge <branch_name>    #合并branch_name分支到当前分支
git branch -d <branch_name> #删除分支
git remote -v              #查看远程库信息
git pull                   #抓取新的分支


其他:

git clone git@github.com:xx/xx.git  #克隆远端仓库到本地
git checkout -b branch-name origin/branch-name  #在本地创建和远程分支对应的分支
git branch --set-upstream branch-name origin/branch-name #建立本地分支和远程分支的关联


ide的配置文件往往是不适合传到代码仓库的,还有编译好的文件,比如java的class文件,python的pyc文件等等。就要–>忽略特定文件

github作为远程仓库的SSH配置

如果master上提交代码错了且push到远端了如何回退!其实直接在master上提交代码是不可取的应严格禁止!!

在本地切到master分支下,使用 git chenkout -b

temp-branch,这样就从master分支上创建了一个新的临时分支,并且切到这个分支下。 git reset –hard

commitpoint, 这个commitpoint代表你要回滚的提交点 git branch -D master ,

这个操作是删除本地master分支 git push origin :master,

删除远程服务器上得master分支,这里的删除就是推送一个空分支到远程master上。但是注意的是远程master可能是一个default设置,这样服务器是不允许删除master分支,这个时候就需要在项目设置上将default标签切换到另一个分支上,上面的删除操作才能成功

将远程分支删掉后需要把回滚后的分支推到远程服务器上,git push origin

temp-branch:master,这样就能完成回退操作 最后是删除temp-branch 分支,git checkout master,

git branch -D temp-branch.

版本重置到远端:

git fetch origin

git reset –hard origin/master
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  git 版本控制