将本地项目上传到github上需要以下步骤:
本地安装git客户端;
创建远程仓库;
绑定本地github用户;
创建本地到github远程仓库的ssh连接秘钥;
将 SSH 密钥添加到 GitHub 帐户;
测试 SSH 连接;
创建本地git仓库;
关联github仓库;
上传本地项目到github。
下面分别介绍每一步骤的详细操作。
1. 安装git客户端
若已经安装,可跳过此节。
根据不同的平台,下载不同的客户端进行安装。
https://mirrors.edge.kernel.org/pub/software/scm/git/
2. 创建远程仓库
Repositoryname: 仓库名称
Description(可选): 仓库描述介绍
Initializethis repository with a README: 添加一个README.md
gitignore:不需要进行版本管理的仓库类型,对应生成文件.gitignore
license: 证书类型,对应生成文件LICENSE
3. 绑定本地github用户
(1)打开终端(Linux)或Git Bash(Windows)
$ git config –global user.name “yourname”
$ git config –global user.email”youremail@example.com
4. 创建本地到github远程仓库的ssh连接秘钥
(1)打开终端(Linux)或Git Bash(Windows)
$ ssh-keygen -t rsa -b 4096 -C”your_email@example.com”
> Generating public/private rsakey pair.
提示您“Entera file in which to save the key(输入要保存密钥的文件)”时,按 Enter 键。这将接受默认文件位置。
> Enter a file in which to savethe key (/home/you/.ssh/id_rsa): [Press enter]
在提示时输入安全密码。更多信息请参阅“使用 SSH 密钥密码”。
> Enter passphrase (empty for nopassphrase): [Type a passphrase]
> Enter samepassphrase again: [Type passphrase again]
(3)运行成功后,在默认情况下会在用户目录下生成.ssh目录,里面包含id_rsa和id_rsa.pub两个文件,若生成过程中未使用默认文件名称,则需要手动在用户目录下创建.ssh目录,并拷贝生成的2个文件。
5.将SSH 密钥添加到 GitHub 帐户
(1)复制id_rsa.pub文件中的SSH秘钥到剪贴板;
(2)登录github,在任意页面的右上角,单击您的个人资料照片,然后单 Settings(设置)。
(3)在用户设置侧边栏中,单击SSH andGPG keys(SSH 和 GPG 密钥)
(4)单击New SSHkey(新 SSH 密钥)或Add SSHkey(添加 SSH 密钥)
(5)在”Title”(标题)字段中,为新密钥添加描述性标签。例如,如果您使用的是个人 Mac,此密钥名称可能是 “Personal MacBook Air”。
(6)将密钥粘贴到 “Key”(密钥)字段。
(7)单击Add SSHkey(添加 SSH 密钥)。
(8)如有提示,请确认您的 GitHub 密码。
6. 测试 SSH 连接
(1)打开终端(Linux)或Git Bash(Windows)
(2)输入以下内容:
$ ssh -Tgit@github.com
# 对 GitHub 尝试 ssh
您可能会看到类似如下的警告:
> Theauthenticity of host ‘github.com (IP ADDRESS)’ can’t be established.
> RSA key fingerprint is16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
> Are you sure you want to continueconnecting (yes/no)?
或类似如下:
> Theauthenticity of host ‘github.com (IP ADDRESS)’ can’t be established.
> RSA key fingerprint isSHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
> Are you sure you want to continueconnecting (yes/no)?
输入yes,显示,表示连接成功:
> Hi username!You’ve successfully authenticated, but GitHub does not
> provideshell access.
7. 创建本地git仓库
(1)打开终端(Linux)或Git Bash(Windows)
(2)进入本地要上传的工程目录下,依次执行
$ git init
$ git add * (此操作是把Test文件夹下面的文件都添加进来)
$ git commit -m “提交信息”
8. 关联github仓库
执行以下命令,将本地项目关联到指定的github仓库
$ git remote add origin \
https://github.com/yourname/project.git
9. 上传本地项目到github
执行以下命令,
$ git push -u origin master
将本地项目上传到github
有时,你会看到如下的错误信息
error:failed to push some refs to …’
Toprevent you from losing history, non-fast-forward updates were rejected
Merge theremote changes before pushing again. Seethe ‘Note about fast-forwards’ section of ‘git push –help’ for details.
这个原因是:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。
执行以下命令,会以覆盖方式用你本地的代码替代git仓库内的内容
$ git push -f
如果不想覆盖,可以执行以下命令进行代码合并
$ git pull –rebase origin master
最后再执行以下命令将会将项目成功上传至github
$ git push -u origin master