热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

使gitclone它自己的存储库

如何解决《使gitclone它自己的存储库》经验,为你挑选了1个好方法。

可能已经有人问过这个问题,但搜索后找不到我想要的东西。

我创建了一个项目并将其推送到github上,然后决定将其用作新项目的样板。因此,我将其克隆到桌面上,然后进行了完全重新设计。项目完成后,我决定在github上创建自己的仓库,并尝试将其推高。但是,这最终导致了我重新设计的项目恢复到其原始状态。我可以通过在所有文件上按CTRL Z来更正此问题(LOL)。我需要找到一种完全分离项目的方法。当我尝试将原始文件推送到git hub时,出现以下错误:

“更新被拒绝,因为远程包含您在本地没有的工作。这通常是由另一个存储库推送到相同的引用引起的。您可能需要先集成远程更改(例如,'git pull ...'),然后再进行再推。”

为了澄清,我不想将两个项目合并或合并在一起,或者最终删除其中一个项目。如果有可能,我想找到一种方法来制作克隆的项目,然后更正原始项目的上述错误。



1> 小智..:

假设您的样板就在,git@github.com:foo/boilerplate.git并且您希望它成为新项目的基础git@github.com:foo/project.git

在github网站上,创建一个名为的空存储库project

将样板存储库克隆到名为的新目录中project

git clone git@github.com:foo/boilerplate.git project

Git会记住该远程地址,因此默认情况下它可以从那里推/拉。但是您不想要这样:相反,从现在开始,您要git push推送到project.gitgithub上的存储库,而不是存储boilerplate.git库。git remote set-url告诉git这project.git是您的新来源(,用于推和拉的默认遥控器)。

cd project
git remote set-url origin git@github.com:foo/project.git

现在,git push将推送到project.git仓库。

(可选)将样板添加为单独的遥控器(但不添加origin,因此您不会偶然使用它):

git remote add boilerplate git@github.com:foo/boilerplate.git

现在,当您更新样板时,您也可以将这些更改合并到您的项目中。(如果样板文件在您的存储库中往往不会发生太大变化,则可以很好地工作project。)

git pull boilerplate master

要将boilerplate.git回购回滚到您希望其分散的程度,您只需要push -f。两种方式:

    如果您在意外将内容推送到github之前仍然有样板存储库的本地副本,请回到那里运行git push -f。这将从github上的样板存储库中删除“您本地没有的工作”-但是您现在已经在单独的存储库中找到了这些东西,对吗?(您至少应该三思而后行git push -f。Git试图帮助您避免意外删除内容。请勿故意删除内容!)

    克隆样板。使用git log,找到您希望保留的提交,例如abc1234。通过运行将github repo的“ master”分支重置为该提交git push -f origin abc1234:master

要查看原点指向的位置(以及您拥有的其他遥控器),请运行git remote -v


推荐阅读
  • 修正我的GitHub commit 数据
    早晨上班,滴滴搭车里,我在掘金这个帖子看到大家晒自己的Github活跃记录,我也晒了下自己的记录。不过太少了。有遗漏的commits状况这也让我知道,自己觉得自己很忙的,实际上提交 ... [详细]
  • 本文详细介绍了git常用命令及其操作方法,包括查看、添加、提交、删除、找回等操作,以及如何重置修改文件、抛弃工作区修改、将工作文件提交到本地暂存区、从版本库中删除文件等。同时还介绍了如何从暂存区恢复到工作文件、恢复最近一次提交过的状态,以及如何合并多个操作等。 ... [详细]
  • 初始化初始化本地空版本库,仓库,英文名repositorymkdirtest&&cdtestgitinit克隆项目到本地gitclone远程同 ... [详细]
  • 先记住几个专用名词,如下:Workspace:工作区IndexStage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库一、新建代码库#在当前目录新建一个G ... [详细]
  • 1.码云上根据需求创建项目;2.进入项目——克隆下载 选择复制SSH3.clone码云上的项目到本地:在相关目录(如A)下运行终端,执行指令:gitclone复制的SSH地址;  ... [详细]
  • 使用GitHubDesktop上传本地的项目文件注册账号下载安装啥的就都省略了,直接进入正题点击左上角的“+”号,选择“Add”项,点击“choose ... [详细]
  • Ubuntu下本地仓库项目上传至github远程仓库
    纯属个人笔记,参考了多篇其他资料,仅供参考。该方法对Ubuntu14.04和16.04都适用。初次使用Git的设置如果初始化配置已经在之前弄过的可以直接跳过这一部分至push ... [详细]
  • 1.首先找到你需要下载的项目,一般是直接搜索2.点击Cloneordownload3.然后点击右侧的复制按钮4.然后打开你的pycharm,选择VCS-Checkoutfromv ... [详细]
  • 当在github上发现别人项目有BUG,或者想要完善其功能的时候,该如何把自己的修改提交到项目中呢?以logback为例步骤:1,fork一份logback代码到自己的仓库进入github要修改项目 ... [详细]
  • 做为一名计算机专业出生的学生,学会一些版本管理工具的使用,会对编写代码起到亊伴功倍的作用。这次我想讲一下关于Github的简单使用,(比较简单)只是在github上建立仓库,然后上传自 ... [详细]
  • GitHubforwindows界面很好,用起来也很方便,一下子就喜欢上了,不过功能不够强大,很多情况下还是要用gitshell。GitHubforwindows怎么用就不提了,网上很多 ... [详细]
  • ps:写的第一个,不足之处,欢迎拍砖---只是想用自己的方法一步步去实现一些框架看似高大上的小功能(比如说模型中的toArraytoJsonsetAtt ... [详细]
  • GitHub Desktop 拉取 GitHub上 Tag 版本代码
    一直在使用GitHubDesktop图形化git管理工具,统一项目框架版本时需要切换到ThinkPHPTag分支版本,步骤如下,1,先在GitHub中找到需要的版本,点进去 ... [详细]
  • 『沉浸式Github 使用指南 』
    github-ten.png你要问我这个世界上什么学习方法是坚持下去最有效果—模仿。深度模仿。2014年9月,正式来到上海,不为别的,为了读书。为了获得更高的学历。那时,我没有想好 ... [详细]
  • 【github】mac终端如何退出git:(master)
    今天在终端误操作,在主目录下执行gitinit命令,结果杯具了,总是出现这个提示。各种搜索解决方案,终于退出了。方法如下:删掉.git目录: ... [详细]
author-avatar
caoxingchi_411
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有