如何将 git 存储库从 Windows 克隆到 Linux?
How to clone git repo from Windows to Linux?
我之前在 Linux 服务器上保留了一个裸露的 git 存储库,在我的本地 Windows 笔记本电脑上保留了一个工作副本用于开发(使用 TortoiseGit 通过 ssh 同步到服务器)。服务器版本是 deleted/lost 所以我想使用 Windows 机器上本地工作副本的最新提交在服务器上重新创建 repo。
从 Windows 工作副本在远程 Linux 服务器上创建这个新的远程裸仓库副本的最佳方法是什么?
只需在服务器上创建存储库,然后将存储库作为远程存储库添加到您的本地存储库(如果它与之前的位置不同)并推送到它。
您可以使用
重新创建 linux 服务器存储库
mkdir -p myrepo.git
cd myrepo.git
git init --bare
在本地副本上,假设远程 URL 相同,执行
git push origin <branch refspec>
例如
git push origin master
注意:如果远程 URL 已更改,您可以使用
git remote set-url origin <new-url>
在您的 Windows 机器上:
git clone --bare /path/to/local-working-copy-of-the-repo
上述命令将创建 repo.git 文件夹的本地工作副本。
现在将文件夹(裸存储库)复制到 Linux 服务器上。
希望对您有所帮助。
按照以下步骤操作:
在远程创建裸存储库。
我想 ad22 提供的答案对你来说已经足够好了:
mkdir -p myrepo.git
cd myrepo.git
git init --bare
否则,您需要了解如何在服务器上创建裸存储库。
复制或备忘刚刚创建的裸存储库的 URL。
(当然,你需要有URL的访问权限。)
为您的本地存储库添加一个新的远程。
由于您已有本地存储库,
- 右键单击该存储库,单击
TortoiseGit
-> Settings
,
- 给遥控器起一个简称,URL 你复制了
- 添加并应用设置。
参见:
通过右键单击本地存储库推送到远程并单击 推送 项。
在推送对话框中,
- Select 您刚刚添加的遥控器。
- 勾选Push all branches复选框,如果所有分支都可以public,否则你需要一个一个地push每个分支。
- 如果要推送所有标签,请选中 包含标签 复选框。
假设就是这样。 ^__^
我之前在 Linux 服务器上保留了一个裸露的 git 存储库,在我的本地 Windows 笔记本电脑上保留了一个工作副本用于开发(使用 TortoiseGit 通过 ssh 同步到服务器)。服务器版本是 deleted/lost 所以我想使用 Windows 机器上本地工作副本的最新提交在服务器上重新创建 repo。
从 Windows 工作副本在远程 Linux 服务器上创建这个新的远程裸仓库副本的最佳方法是什么?
只需在服务器上创建存储库,然后将存储库作为远程存储库添加到您的本地存储库(如果它与之前的位置不同)并推送到它。
您可以使用
重新创建 linux 服务器存储库mkdir -p myrepo.git
cd myrepo.git
git init --bare
在本地副本上,假设远程 URL 相同,执行
git push origin <branch refspec>
例如
git push origin master
注意:如果远程 URL 已更改,您可以使用
git remote set-url origin <new-url>
在您的 Windows 机器上:
git clone --bare /path/to/local-working-copy-of-the-repo
上述命令将创建 repo.git 文件夹的本地工作副本。
现在将文件夹(裸存储库)复制到 Linux 服务器上。
希望对您有所帮助。
按照以下步骤操作:
在远程创建裸存储库。
我想 ad22 提供的答案对你来说已经足够好了:
mkdir -p myrepo.git cd myrepo.git git init --bare
否则,您需要了解如何在服务器上创建裸存储库。
复制或备忘刚刚创建的裸存储库的 URL。
(当然,你需要有URL的访问权限。)
为您的本地存储库添加一个新的远程。
由于您已有本地存储库,
- 右键单击该存储库,单击
TortoiseGit
->Settings
, - 给遥控器起一个简称,URL 你复制了
- 添加并应用设置。
参见:
- 右键单击该存储库,单击
通过右键单击本地存储库推送到远程并单击 推送 项。
在推送对话框中,
- Select 您刚刚添加的遥控器。
- 勾选Push all branches复选框,如果所有分支都可以public,否则你需要一个一个地push每个分支。
- 如果要推送所有标签,请选中 包含标签 复选框。
假设就是这样。 ^__^