簡體   English   中英

如何在 git 中提取本地倉庫?

[英]How to pull a local repo in git?

我需要將本地倉庫拉到我的新倉庫中。 可以說我想拉original duplicate 我在這里看到了解決方案,但兩者都存在一些問題,如下所述-

  1. 使用git remote add original將分支original添加到遠程,然后拉取此遠程存儲庫。 但是我在遠程 repo 上有一個同名的 repo,其中包含我不會弄亂的公司邏輯。 所以我不能使用這種方法。
  2. 使用git pull --help我發現我可以使用git pull /path/to/repo's .git/file但這兩個分支屬於同一個項目,因此它們具有相同的.git文件。

我還有其他方法可以做到嗎? 提前致謝

我認為這里的repobranchremote概念之間存在誤解。

根據我的理解,您想“將本地分支拉入另一個本地分支”(即“拉”一個分支,而不是回購)。 pull通常不是我們用於本地分支的術語( pull操作涉及從遠程倉庫中獲取一些東西)。

如果這是您想要做的,有兩種選擇:

  • 您可以使用如git merge my_task_branch到合並my_task_branch進當前的分支。
  • 您可以使用git rebase master來移動您在當前分支上所做的更改,以便它們基於本地master分支上的最新更改。

這兩個選項都將確保其他分支(上面示例中的my_task_branch / master )上的更改在當前分支中可用。


一些術語:

回購:一個回購有一個.git目錄。 如果您有兩個存儲庫,則它們(根據定義)有兩個不同的.git目錄,否則,它們是相同的存儲庫。 當您說“兩個分支屬於同一個項目,因此它們具有相同的.git文件”時,您的意思是兩個分支都在同一個 repo 中。

分支:一個倉庫可以有多個分支。 每個分支代表可能不同的更改歷史。 您可以對一個分支進行一些更改,提交它們。 然后簽出另一個分支以在那里進行一些其他更改。

遠程:遠程是對另一個存儲庫的引用,您可以從中獲取/推送更改。

拉:一個git pull操作有兩個部分。 首先,提交是從其他遠程倉庫獲取的(這可以使用git fetch命令單獨完成)。 此后,來自遠程倉庫的一些分支被合並到當前分支( git merge命令)

本地分支 vs 遠程分支:你可以在你的倉庫中創建任意數量的本地分支。 但是本地分支不同於遠程分支。 您可以創建任意數量的本地分支,而不會以任何方式影響遠程倉庫。 如果您git push那些分支,則本地分支僅在遠程存儲庫中可見。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM