我在https://github.com/railstutorial/sample_app_rails_4上克隆了该存储库,并对其进行了很多更改(我将其用作自己应用程序的起点),现在我想将更改后的应用程序推送到回购我自己的github帐户。
如何更改链接到的github存储库?
我在https://github.com/railstutorial/sample_app_rails_4上克隆了该存储库,并对其进行了很多更改(我将其用作自己应用程序的起点),现在我想将更改后的应用程序推送到回购我自己的github帐户。
如何更改链接到的github存储库?
Answers:
正如Deefour所说,您的情况与更改远程Git存储库的URI(URL)中的情况没有什么不同。当您clone
使用存储库时,该存储库将作为您的存储库添加remote
,名称为origin
。现在您需要做的(因为您不再使用旧的源代码)是changeorigin
的URL:
$ git remote set-url origin http://github.com/YOU/YOUR_REPO
如果原始存储库会经常更新,而您想不时获取这些更新,那么origin
最好不要添加新的编辑内容remote
:
$ git remote add personal http://github.com/YOU/YOUR_REPO
或者甚至叫旧的upstream
:
$ git remote rename origin upstream
$ git remote add origin http://github.com/YOU/YOUR_REPO
然后,每当您希望从进行更改时upstream
,都可以执行以下操作:
$ git fetch upstream
由于此源是一个示例存储库(似乎是一个开始的模板),我认为没有必要保留它也根本不需要它-我将在这里使用第一个替代方法。
GitHub:git clone
其他人的存储库和git push
您自己的存储库
我将把其他人的存储库称为另一个存储库。
在github.com上创建一个新的存储库。(这是您的存储库)
将另一个存储库克隆到本地计算机。(如果您还没有这样做的话)
git clone https://github.com/other-account/other-repository.git
将本地存储库的当前“原点”重命名为“上游”。
git remote rename origin upstream
给本地存储库一个指向您存储库的“来源” 。
git remote add origin https://github.com/your-account/your-repository.git
将本地存储库推送到github上的存储库。
git push origin master
现在,“原始”指向您的存储库,“上游”指向另一个存储库。
git checkout -b my-feature-branch
。git commit
像往常一样进入存储库。git pull upstream master
以拉从改变其他仓库到你的主分支。git push origin master
我尝试得到时:... Compressing objects: 100% (1093/1093), done. Writing objects: 100% (4185/4185), 504.89 KiB | 126.22 MiB/s, done. Total 4185 (delta 3049), reused 4185 (delta 3049) remote: Resolving deltas: 100% (3049/3049), done. remote: pre-receive.sh: execution exceeded 5s timeout To https://github.com/your-account/your-repository.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'https://github.com/your-account/your-repository.git'
您的目的可能是将此存储库放在您的存储库中,然后将其制作为您的存储库。
.git/
并重新初始化。
rm -rf .git
git init
git add .
git commit -m "your commit message"
git remote add origin
git push origin master
.git
目录吗?git init
还是不会抹掉它吗?
您可以通过从本地存储库(通过命令行)创建一个新的远程服务器来实现。
git remote add <name> <url>
那么您可以致电:
git push <name> <repo_name>
要替换已设置的默认“原始”遥控器,可以运行以下命令:
git remote rm origin
git remote add origin <url>
我认为这样做的“最礼貌的方式”是:
git checkout -b <your_branch_name>
(以防您之前没有这么做)git remote add github <your_repository_ssh_url>
git push github <your_branch_name>
这样,您将拥有一个原始版本库,并将更改提交到一个单独的分支中。如果您要向原始存储库提交拉取请求,这种方式会更容易。
github
这些说明中通常称为的位origin
。否则,简单明了。