Visual Studio Git本地Repos和GitHub远程Repos互操作
近期准备将一个项目开源到GitHub中,N-Sharding,.Net版本的分库分表数据访问框架。中间遇到了点小问题,整理了一下。 1. GitHub上Create New Repos 2. 代码Check In到本地Git Repos 3. Push到GitHub远程Repos 一、GitHub上Create New Repos:N-Sharding 2. 代码Check In到本地Git Repos? ? 3. Push到GitHub远程Repos 推送提示一下错误: 将分支推送到远程存储库时遇到错误: rejected Updates were rejected because the tip of your current branch is behind its remote counterpart. Integrate the remote changes before pushing again. Error: failed to push some refs to 'https://github.com/*****/N-Sharding.git' Error: hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. Integrate the remote changes (e.g. hint: git pull ...) before pushing again. hint: See the Note about fast-forwards' in git push --helpfor details. 看中间第三句话:Updates were rejected because the tip of your current branch is behind 说明本地分支是旧的,远程Master分支要新。为什么呢? 突然想起来,在GitHub上Create New Repos时,增加了Readme.md。本地没有这个文件。 一顿百度后:https://www.cnblogs.com/gzdaijie/p/5186516.html 解决方案: 1. 打开Git Bash 2. Git拉取最新的代码到本地,一定要rebase,强制同步更新本地分支 git pull --rebase origin master 关于Git rebase,可以参考:https://git-scm.com/docs/git-rebase 3. 推送Push到Master主分支 git push -u origin master Push 成功,代码成功提交到master。 Tips:关于git merge 与 git rebase 1. git merge 和 git rebase 都是将远程分支与本地分支合并的一种方法,git merge 会生成一个新的节点,例如A和B都位于同一个HEAD,A提交了2个commit C1和C2,B 提交了2个commit C3和C4,git merge的结果是在C3和C4之后合并生成C5,这样提交历史比较清晰,但多了一个C5 2. 假设A已经将C1和C2 push到了远程分支,那么B 使用git rebase则会将C3和C4缓存到.git/rebase中,恢复到之前的状态,更新C1和C2,然后再将C3和C4作为补丁应用到C2的状态上。结果如下: 原始状态->C1->C2->C3->C4',C3和C4'为git 根据C3和C4生成的补丁,log是一条直线,而且没有多余的C5,但是平行信息丢失。 关于git pull 与 git pull --rebase 1. git pull = git fetch + git merge 2. git pull --rebase = git fetch + git rebase ? 以上,分享给大家。 ? 周国庆 2019/3/17 ? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – Web API的XML帮助文档未在发布时更新
- asp.net-mvc-3 – 是否可能获得一个ASP.NET MVC 3项目工作在
- asp.net – 存储应用程序变量
- asp.net-mvc-4 – Html.LabelFor始终显示属性名称而不是值
- asp.net-mvc – 如何使用Html.BeginForm设置FormMethod.Get
- asp.net-mvc-3 – 为什么抛出NULL值异常?
- ASP.NET Excel导出编码问题
- asp.net-mvc – ASP.NET MVC编辑集合最佳实践 – 您的意见
- asp.net – Visual Studio 2012不发布项目
- asp.net – 为动态生成的孙子控件添加PostBackTriggers和As
- ASP.NET POST-DATA截断为49152字节(48K)
- asp.net – asp .net mvc 4下拉列表
- entity-framework – 如何升级EF Core Tools
- entity-framework – Entityframework Mapping问
- asp-classic – 如何将字符串转换为日期时间格式
- asp.net – 获取Azure Web App实例ID
- asp.net-mvc – ASP.NET MVC自定义错误页面(Stat
- asp.net – 如何在Page_Load上获取参数
- asp.net – 使用Web部署参数时,使用web.config中
- .net – 如何更改乌节纪录库