我已在我的服务器上安装了Git并已成功连接到Github。 我现在想将我的网站(已经开发)下载到Github以开始版本跟踪。但是,我这样做有问题。
我已经与Github签约并创建了一个带有自述文件的空白存储库。
我已登录我的服务器并创建了id_rsa.pub 我使用cat复制了id_rsa.pub的内容,并将密钥放入我的github帐户。
我现在想将我的网站推送到Github上的存储库。
然而,我似乎无法让它发挥作用。请有人给我一个演练吗? 这是从服务器到Github的初始下载。
当我这样做时
git push -u origin master
我回来了:
致
git@github.com:<github-username>/<github-repo-name>.git
! [拒绝]主人 - &gt;主人(非快进)
错误:未能将某些引用推送到git@github.com:<github-username>/<github-repo-name>.git
为了防止您丢失历史记录,拒绝非快进更新在再次推送之前合并远程更改(例如git pull
)。有关详细信息,请参阅git push --help
的“关于快进的注意事项”部分。
当我这样做时
git pull
我回来了:
当前分支没有跟踪信息。请 指定要合并的分支。请参阅git-pull(1) 细节
git pull <remote> <branch>
如果您希望为此分支设置跟踪信息,则可以执行此操作 用:
git branch --set-upstream master <remote>/<branch>
答案 0 :(得分:2)
首先,您需要:
git pull origin master
从服务器引入更改。
然后,git push origin master
将起作用。
这是因为您使用自述文件创建了一个存储库,并在您的本地副本而不是git init
中创建了clone
。
创建自述文件会导致github创建存储库,但随后也会将自述文件推送到存储库 - 服务器的存储库版本现在具有本地版本没有的提交。因此,在将文件推送到github之前,您需要使用github更新本地副本。
答案 1 :(得分:1)
根据github在创建回购后立即提供的说明:
现有的Git Repo?
cd existing_git_repo git remote add origin git@github.com:<github-username>/<github-repo-name>.git git push -u origin master