解决提交冲突
解决提交冲突(拉取本地合并提交)
查看github。需要注意的是,据说如果源库有分支的话,还需要进行合并分支的操作,不然可能会出错。
第一次创建仓库的话,如果想要远程简单提交一次文件的话,就最好创建一个空的库。这样提交的话,操作会比较简单。
如果是多人开发的话,最好先将远程分支拉取下来,然后进行提交。
首先可以自己查看自己目前本地以及远程仓库的分支
git branch --查看本地分支
git branch -r -- 查看远程分支
本地的和远程的显示的这个分支都是显示在基于固定的远程关联的远程仓库的地址上进行显示的。
比如我关联的是我的practice的一个仓库,那么显示的分支会在这个基础上显示。远程的分支我显示在这个仓库上的分支。
这样的两个分支里面的文件是一样的。因为我在原有仓库(本来只有一个master)的基础上,又在本地创建了一个分支并提交了上去,没有更改的话,那么它的内容会和master一样。当前你可以进行更改,在一个分支上更改,不会影响另一个分支。
如何给你的远程仓库创建一个分支呢?当前也可以直接在远程仓库手动创建。现在我们要用git工具进行操作。
如下,可以现在本地创建一个,然后给他推到远程仓库就完事。
git checkout -b dev
git push origin dev
我们说完这些,就是要说说如何进行一个分支合并以及分支冲突的处理。存在的问题是如果你的远程仓库的当前分支下存在文件的话,如果你直接提交的话,会提交不成功。
来测试一下,现在我的dev仓库里面存在文件。现在我要用git往这个仓库里面提交内容。
现在重写开一个bash。
按照常规的步骤
git init
跟踪上传文件
git lfs track "PDF.rar"
添加要上传的文件
git add "PDF.rar"
先提交本地
git commit -m "nsaksnam"
远程关联
git remote add origin https://github.com/jgdabc/pratice.git
进行提交
git push origin dev
但是这样会出现问题
其实是不允许进行覆盖
一个暴力的办法就是暴力覆盖
git push -f origin dev
所以这下我的dev分支就被覆盖掉了。
如果我不想覆盖原有的文件怎么办?
这是现在我的dev分支下面的文件
我现在要提交另外一些文件,但是我不想覆盖掉原有的文件
我要提交一个java文件
git init -- 初始化一个仓库
git remote add origin https://github.com/jgdabc/pratice.git -- 关联远程仓库
git checkout -b dev -- 创建一个dev分支,然后转到dev分支
git pull origin dev -- 从远程分支拉取代码,进行同步
同步成功
添加一个新的文件
git commit -m "pratice"
给远程提交
git push -u origin dev
实现目的。这样做,源文件不会被覆盖。
是一个版本控制非常方便的工具。多用用,就明白了。
- 点赞
- 收藏
- 关注作者
评论(0)