Git 分布式版本管理系统

来源:互联网 发布:图片手机标记软件 编辑:程序博客网 时间:2024/04/29 08:33

多人协作开发最主要的git 命令


注意:项目经理必须要做一点,就是要给远程仓库中的工程添加.ignore文件,这样的话可以忽略一些没有必要一直提交的文件,,加快提交和推送的速度


版本控制最权威的图如下,git flow也是根据下图进行版本控制的.

git版本控制的开发流程详图:




下面的命令是git的基本操作命令:  关于敲命令给大家推荐一个比较好的工具Iterm2


git clone  远程仓库地址

git config  配置个人信息 (方便标记代码提交者)

git status 查看本地仓库的代码状况

git add 文件名/git add .将本地工作区的代码添加到暂存区

git commit -m “…” 提交暂存区的代码到本地仓库

git pull  拉取远程仓库的代码

git push 将本地仓库的代码推送到远程仓库



git 分支


查看当前分支:

git branch


创建一个新的分支(本地):

git branch 分支名称


将本地分支推送到远程服务器:

git push origin new_branch 


切换到分支:

git checkout new_branch


创建并切到新新分支:

git checkout -b new_branch


删除分支(本地分支):

git branch -D 分支名称


删除远程分支:

git push origin :branch-name


重命名分支:

git branch -m old_branch new_branch


合并分支:

git merge 分支名

//合并分支的时候使用

git merge --no-ff newbranch

--no-ff参数的作用是在合并的时候,会创建一个新的提交对象,即使是fast-forward方式的合并。这就避免了丢失特性分支的历史记录信息以及提交记录信息



打标签:

git tag -a v1.4 -m 'my version 1.4'

推送到远程仓库:

git push origin v1.5

查看标签的信息:

git show v1.4-lw


查看分支的提交日志:

git log origin/new_branch


在发布证书的分支上再创建一个预发布证书:

$ git checkout -b release-1.2 develop

Switched to a new branch "release-1.2"

$ ./bump-version.sh 1.2

Files modified successfully, version bumped to 1.2.

$ git commit -a -m "Bumped version number to 1.2"

[release-1.2 74d9424] Bumped version number to 1.2

1 files changed, 1 insertions(+), 1 deletions(-)


//bump-version.sh是一个虚构的shell脚本,它更改了工作空间的某些文件来反映新版本特征。


结束一个release分支:

$ git checkout 发布分支

Switched to branch 'master'

$ git merge --no-ff release-1.2

Merge made by recursive.

(Summary of changes)

$ git tag -a 1.2

这步有可能会有合并冲突(极有可能,因为我们已经改变了版本号)。如果有冲突,解决掉他,然后提交。

现在我们已经完成了工作,release分支可以删除了,因为我们不在需要他:

$ git branch -d release-1.2

Deleted branch release-1.2 (was ff452fe).


远程版本的回退

首先将本地分支回退到需要回退的版本(git reset --hard版本号);

将本地分支push到远程分支(git push origin分支 -f;




补充:

每个分支就相当于是一个指针,创建新的分支就相当于创建一个新的指针指向提交


每一次提交的文件(存放在本地仓库中的文件)都有一个hash,hash值简单的说只是为了标记每一个不同的本地文件,目的是为了方便回退版本(git reset —hard取长度大于前六位hash)

查看hash可以通过git log或者git reflog 


git要理解清楚三大区:

工作区

暂存区  ——执行git add .以后会将代码添加到暂存区

对象缓存区/本地仓库  —执行git commit -m “ …. ”以后会将暂存区的代码提交到本地仓库





0 0
原创粉丝点击