如何在git中提取本地仓库?

问题描述 投票:-1回答:1

我需要将一个本地仓库拉到我的新仓库。让我们说我想把original拉到duplicate。我已经在这里看到了它的解决方案,但是如下所述,两者都存在一些问题 -

  1. 使用original将分支git remote add original添加到远程,然后拉动此远程仓库。但我在远程仓库上有一个同名的回购,其中包含我不会乱用的公司逻辑。所以我不能使用这种方法。
  2. 使用git pull --help我发现我可以使用git pull /path/to/repo's .git/file拉回购,但这两个分支是相同的项目所以他们有相同的.git文件。

还有其他办法吗?提前致谢

git github git-branch
1个回答
1
投票

我认为这里的概念repobranchremote之间存在着误解。

根据我的理解,你想“将一个本地分支拉到另一个本地分支”(即“拉”一个分支,而不是一个回购)。 pull通常不是我们用于本地分支的术语(pull操作涉及从远程仓库获取东西)。

如果这是你想要做的,有两个选择:

  • 您可以使用例如git merge my_task_branchmy_task_branch合并到当前分支中。
  • 您可以使用git rebase master移动您在当前分支上所做的更改,以便它们基于本地master分支上的最新更改。

这两个选项都将确保在当前分支中提供其他分支(上例中的my_task_branch / master)的更改。


一些术语:

回购:回购有一个.git目录。如果你有两个repos,它们(根据定义)有两个不同的.git目录,否则,它们是相同的repo。当你说“两个分支都是同一个项目,所以它们有相同的.git文件”时,你的意思是两个分支都在同一个仓库中。

分支:回购可以有多个分支。每个分支代表可能不同的变化历史。您可以对一个分支进行一些更改,然后提交它们。然后检查另一个分支,在那里进行一些其他更改。

远程:远程是对您可以获取/推送更改的另一个repo的引用。

拉:git pull操作有两个部分。首先,从其他远程仓库获取提交(这可以使用git fetch命令单独完成)。此后,来自远程仓库的一些分支合并到当前分支(git merge命令)

本地分支与远程分支:您可以在仓库中创建任意数量的本地分支。但是本地分支与远程分支不同。您可以创建任意数量的本地分支,而不会以任何方式影响远程仓库。如果你git push这些分支,本地分支只在远程仓库中可见。

© www.soinside.com 2019 - 2024. All rights reserved.