如何初始化,添加一个现有的远程,然后在Git中推送一个新的分支?
我和我的朋友在Gitlab有一个远程分支。出于某种原因,我通过复制粘贴从我的朋友那里得到了这个项目(我知道这是一件坏事)。但假设我得到了代码,做了一些更改,我想在其中初始化git,然后在我们的项目中推出一个新的分支。比如:如何初始化,添加一个现有的远程,然后在Git中推送一个新的分支?,git,Git,我和我的朋友在Gitlab有一个远程分支。出于某种原因,我通过复制粘贴从我的朋友那里得到了这个项目(我知道这是一件坏事)。但假设我得到了代码,做了一些更改,我想在其中初始化git,然后在我们的项目中推出一个新的分支。比如: 从我的朋友那里得到这个项目 在代码中做一些更改 项目文件夹中的git init git远程添加源https://... git fetch 在这一步中,我想创建一个分支,比如说foo branch。提交我的更改,并将其推送到origin foo branch,后台提交mast
git远程添加源https://...
git fetch
foo branch
。提交我的更改,并将其推送到origin foo branch
,后台提交master(或任何其他分支)git reset master
,这样我就可以从master branch获得所有旧的提交,但没有成功
如果你需要的话,我可以提供更多的信息
编辑1:在第5步之后,我执行了
git重置原点/主控盘
。它似乎是一个需要继续的东西,git log
显示了所有以前的提交。但是这一次,git status
显示所有文件,甚至是.gitignore
中的文件。有没有办法正确执行此操作?如果tarball中包含要推入gitlab
的代码,您应该这样做
.git
)git diff
以确认更改是否正确git添加
,git提交
,以及git推送
到新分支你是如何从你的朋友那里“得到”这个项目的?作为一个柏油球?tarball中有
.git
目录吗?解压时通过压缩整个项目,是否有.git
目录?没有,解压后我完全删除了.git
目录,对不起,我忘了提及这一点。我还编辑了这个问题。因此,您希望所有旧的提交到一个新的分支。在步骤1中,您的意思是将repo克隆到一个全新的文件夹,在步骤4中,您的意思是复制粘贴所有文件,除了.git
,从我得到的zip到我刚得到的新克隆,对吧?你的解决方案实际上和我对一个问题的一个答案很相似,对吧?类似的。但是等等,你是说你还保留着原来的柏油球吗?在这种情况下,您可以提取以前(出于某种原因)删除的.git
目录。