假设我在git.fedorahosted.org上有一个存储库,我想将其克隆到我在github的帐户中,以拥有自己的游乐场,而不是在fedorahosted上更“官方”的回购。 最初复制的步骤是什么? 在github中有一个漂亮的“fork”按钮,但我不能使用这个明显的原因。

我如何跟踪fedorahosting回购到github的变化?


当前回答

首先,在Github上创建你的回购。然后将目录更改为签出的源存储库—假设您想要推送主分支。你需要执行5个简单的步骤:

git remote add origin2 https://github.com/user/example.git
git checkout master
git pull
git push origin2 master
git remote remove origin2

这将在本地回购和新的远程之间创建链接,签出并拉出源分支(以确保它有最新的分支),然后推入当前分支,最后从远程断开本地回购的链接。

在此之后,您的本地回购将是完整的,您可以像以前一样使用它。如果需要推送多个分支,可以根据需要多次重复签出-拉-推步骤,只需相应地更改分支名称即可。

其他回答

试试这个如何移动一个完整的Git存储库

Create a local repository in the temp-dir directory using: git clone temp-dir Go into the temp-dir directory. To see a list of the different branches in ORI do: git branch -a Checkout all the branches that you want to copy from ORI to NEW using: git checkout branch-name Now fetch all the tags from ORI using: git fetch --tags Before doing the next step make sure to check your local tags and branches using the following commands: git tag git branch -a Now clear the link to the ORI repository with the following command: git remote rm origin Now link your local repository to your newly created NEW repository using the following command: git remote add origin <url to NEW repo> Now push all your branches and tags with these commands: git push origin --all git push --tags You now have a full copy from your ORI repo.

将本地存储库链接到不同的远程存储库

删除与远程存储库的所有连接: 在项目文件夹内:

删除本地存储库中的所有数据 git状态(我必须说它没有链接到任何东西,有点像一个错误)

链接到一个新的远程存储库

git init启动本地存储库 Git远程添加原始urlrepository。链接到远程存储库 git remote -v确认它链接到远程存储库

3-向本地存储库添加更改并推送到远程存储库

Git pull或Git pull origin master——allow-unrelated-histories(如果本地和远程repo中的Git历史不同)。 git添加。 git commit -m" Message " Git push -u origin master

就是这样!

用下面的命令改变GIT的repo URL,简单地指向新的repo:

git remote set-url origin [new repo URL]

例如:git remote set-url origin git@bitbucket.org:Batman/batmanRepoName.git

现在,推和拉与新的回购挂钩。

然后像这样正常地推:

git push -u origin master

我用set-url找到了一个简洁易懂的解决方案:

在Github创建一个新的回购 CD到本地机器上现有的存储库中(如果您还没有克隆它,那么请先执行此操作) Git远程set-url origin https://github.com/user/example.git Git push -u origin master

我做到这一点的方法是:

在github上创建一个新的repo (new-repo.git) CD old-repo/在本地机器上获取所有新的更改 Git push -u https://github.com/[username]/new-repo.git main -f 将新的远程repo https://github.com/[username]/new-repo.git克隆到本地环境

我发现这是一个简单的方法,基本上复制一个旧的远程回购到一个新的远程回购。