【发布时间】:2022-09-24 16:59:55
【问题描述】:
我有一个要求,
- 我需要将远程分支克隆到本地。
- 在本地文件夹中添加一些文件
- 将更改推送到其他现有远程分支。
但是,当我确实推送时,它实际上是将远程分支详细信息克隆到我的本地,然后推送它。 因此,我丢失了本地新添加的文件(这些文件将被覆盖),并且这些文件不会推送到另一个分支。
我用来推送的命令如下:
git init cd git_test git fetch git checkout repobranchB git add -A git commit -m \"test\" git pushgit push 中是否有任何选项,它不会将远程分支中的现有文件克隆到本地?我只需要将我本地的所有文件添加到指定的远程分支。
-
那看起来不太对劲。您应该从将克隆的现有远程分支工作吗?克隆操作在哪里(或者您在新仓库中添加远程并从中获取)?
-
当您执行
git init时,它将在您的当前目录中初始化一个新的空仓库。您的(新的,空的)存储库中没有定义分支或远程。所以git fetch和git checkout repobranchB在你给定的例子中都会失败。要推送提交,您需要在推送之前在本地提交。要将子提交(即以另一个提交作为父提交的提交)添加到存储库,您需要拥有该存储库。 -
\"我需要将远程分支克隆到本地\" 但你永远不会这样做。这是第 1 步,因此您需要先执行此操作。
-
Git 不推送文件。 Git 只推送提交.您必须提交包含所需文件快照的提交,然后推送。这样做的方法是使用 Git 存储库。由于提交链接到以前的提交,因此您需要一个现有存储库的克隆,以便您的新提交可以添加到某个分支的最后一个现有提交。
标签: git