使用SmartGit在本地设置Git时出现推/拉错误
我想在本地PC上开始使用DVCS和Git进行项目。这是一个私人项目,允许我跟踪更改和版本,将来允许外部开发人员参与项目。 现在我只想坚持本地设置。 我正在使用SmartGit作为我的git客户端使用SmartGit在本地设置Git时出现推/拉错误,git,version-control,smartgit,Git,Version Control,Smartgit,我想在本地PC上开始使用DVCS和Git进行项目。这是一个私人项目,允许我跟踪更改和版本,将来允许外部开发人员参与项目。 现在我只想坚持本地设置。 我正在使用SmartGit作为我的git客户端 这是我的设置过程: 打开SmartGit->Repository->添加或创建 将路径添加到我的当前项目文件夹 在“存储库”窗格中选择项目 阶段(所有文件)->提交 分支设置为“主” 我希望这是我的中央存储库,用于将文件推送到其中并进行备份 现在创建我的工作存储库: 存储库->克隆->本地Git存储库
这是我的设置过程:
现在正在测试推动中央回购的变化:
Error not all refs have been pushed -> 'master' rejected (non-fast-forward)
根据我的研究,我尝试以下方法:
Error not all refs have been pushed -> 'master' rejected (non-fast-forward)
"Already up-to-date"
我现在尝试修复错误:
"Already up-to-date"
Error not all refs have been pushed -> 'master' rejected (non-fast-forward)
"Already up-to-date"
然后我尝试从中央回购中撤出:
提前谢谢 您使用的是什么版本的Git?在GitV2.0之前,默认行为是在推送时将所有分支推送到远程。可能是您所在的分支以外的分支与远程服务器已过期 如果低于2.0,并且有任何其他分支可能已过期,请尝试从命令行键入以下内容:
git config push.default simple
这将告诉Git只推送您当前所在的分支。然后尝试另一次推送,看看这是否解决了问题。我怀疑您的本地
主机可能没有跟踪原点/master
。此外,您的中央存储库应该是空的,因此我建议重新开始:
确保您的中央存储库是空的。因此,从命令行使用'git init--bare'创建一个新的存储库
使用SmartGit:
使用clone从中央存储库创建克隆。这将发出警告,如警告:您似乎克隆了一个空存储库。
将现有源/任何内容移动到克隆中并提交。这将自动将您置于master
最后,调用Push并确认配置master
和origin/master
之间的跟踪
我没有使用过任何git gui客户端,我发现使用git更难,速度也更慢。尝试打开git-bash到您的git-repo文件夹,然后运行$git-fetch
,$git-merge--no-ff-origin/master
。然后,您应该能够推送(如果合并中没有冲突)$git push origin master
这似乎有效,谢谢!如果导航到我创建为裸机的中央存储库,则它不包含任何文件。但是在文件夹上运行“git ls tree-r master”会将文件列为存在,这是正常的git行为吗?Bare意味着存储库没有工作树。不过,您可以在裸存储库中打开日志。在这里,在文件视图中,您可以切换显示未更改的文件,这将为您提供与git ls tree-r相同的输出