git服务器创建,冲突解决

1、git服务器创建

在公司多人协作开发的情况下,不能简单地使用github,因为github是互联网公开的,这种情况公司的代码的保密性就会丧失了。这种情况下,需要创建git服务器。

登录服务器,使用git init --bare xx.git创建空的git版本库,这个版本库比较特别,和tree不是一回事,在这个目录下也没法运行git命令。

之后在工作的机器上,clone此版本库。

多人clone以及pull、push就可以实现协同开发。

然后本地的操作方法就都和一般使用git一样了,只不过ip不是对应github而是自己的git服务器。

2、冲突解决

多人协同开发的时候,如果两个人改了同一个文件,其中A提交了并push了改动。

这种前提下,B先pull,发现冲突,此时必须解决冲突才能提交。

此时有一种可能,B只需获取更新,覆盖自己的改动即可。

这时可运行命令

git fetch --all
git reset --hard origin/master
git pull

如果B既需要获取更新,还需要把自己的改动提交,那就需要手动改文件解决冲突了。

时间: 2024-11-09 08:04:45

git服务器创建,冲突解决的相关文章

Git下的冲突解决

冲突的产生 很多命令都可能出现冲突,但从根本上来讲,都是merge 和 patch(应用补丁)时产生冲突. 而rebase就是重新设置基准,然后应用补丁的过程,所以也会冲突. git pull会自动merge,repo sync会自动rebase,所以git pull和repo sync也会产生冲突.当然git rebase就更不用说了. 冲突的类型 逻辑冲突 git自动处理(合并/应用补丁)成功,但是逻辑上是有问题的. 比如另外一个人修改了文件名,但我还使用老的文件名,这种情况下自动处理是能成

Git分支合并冲突解决(续)

接Git分支合并冲突解决,在使用rebase合并冲突情况下,如果不小心,执行完add后执行了commit,此时本地仓库HEAD处于游离态(即HEAD指向未知的分支),如何解决? 解决方法 (1)此时,分支处于 无分支 状态,创建并切换到新分支(git checkout -b conflict),从而解决HEAD游离状态: (2)放弃此次rebase操作(git rebase --abort): (3)在dev分支上merge新分支,出现冲突(git merge conflict): (4)冲突修

?git?-----协同开发,冲突解决 合并分支(项目中使用git)

使用基本流程 """ 1.开发前,拉一次远程仓库 2.工作区进行开发 3.将开发结果提交到本地版本库 - git status查看时没有待处理的事件 4.拉取远程仓库(每一次要提交远程仓库前必须先拉) 5.如果出现冲突,线下沟通(协商重新开发冲突文件),要重新走3.4步 6.没有冲突,提交到远程仓库 """ 协同开发 """ 1)所有人在一个分支上进行开发 - 通常开发分支名为dev 2)遵循git开发流程:先提交本

Git 分支管理和冲突解决

创建分支 git branch 没有参数,显示本地版本库中所有的本地分支名称. 当前检出分支的前面会有星号. git branch newname 在当前检出分支上新建分支,名叫newname. git checkout newname 检出分支,即切换到名叫newname的分支. git checkout –b newname master 这个命令将上面两个命令合并:在master分支上创建分支newname分支并检出到该分支. 合并分支间的修改 Merge 合并操作将两条或多条分支合并到一

git学习 八 冲突解决

准备新的feature1分支,继续我们的新分支开发: $ git checkout -b feature1 Switched to a new branch 'feature1' 修改readme.txt最后一行,改为: Creating a new branch is quick AND simple. 在feature1分支上提交: $ git add readme.txt $ git commit -m "AND simple" [feature1 75a857c] AND si

git切换分支冲突解决-删除分支

在项目开发中,有多个版本分支需要不时的来回切换,在切换的过程中,产生了很多冲突,提交的时候 也提交不了.总结下在解决这个过程中使用的两种方法: 1.删除项目在磁盘的目录,包括 git 文件,重新 clone 一遍,保存到本地,然后导入到开发工具中. 2.本地目录下分支多,切换时产生冲突,切换到一个没有问题或不再使用的分支.然后删除有问题的分支, 再checkout 一遍对应的分支,即可. 删除分支的命令为:  删除本地分支: git branch -d devexception 强制删除,git

IIS服务器和xampp中的appche服务器端口冲突解决办法

今天在启动xampp中的appche的时候,发现以前能起来的现在起不来了.想到可能是最近配置的系统自带的IIS服务器把appche的端口给占用了. (appche和iis的默认端口号都是:80:) 问题来了,那么想办法解决吧. 1.解除iis服务器80端口的占用,让appche可以启动: 方法一: 控制面板-管理工具-服务-World Wide Web Publishing Service 先停止后禁用 : 方法二 :打开cmd命令行控制台,运行  net stop iisadmin /yes

git分支管理与冲突解决(转载)

Git 分支管理和冲突解决 原文:http://www.cnblogs.com/mengdd/p/3585038.html 创建分支 git branch 没有参数,显示本地版本库中所有的本地分支名称. 当前检出分支的前面会有星号. git branch newname 在当前检出分支上新建分支,名叫newname. git checkout newname 检出分支,即切换到名叫newname的分支. git checkout –b newname master 这个命令将上面两个命令合并:在

git 分之合并和冲突解决

Git 分支管理和冲突解决 创建分支 git branch 没有参数,显示本地版本库中所有的本地分支名称. 当前检出分支的前面会有星号. git branch newname 在当前检出分支上新建分支,名叫newname. git checkout newname 检出分支,即切换到名叫newname的分支. git checkout –b newname master 这个命令将上面两个命令合并:在master分支上创建分支newname分支并检出到该分支. 合并分支间的修改 Merge 合并