上传本地项目到github操作指南
将本地项目上传到github上需要以下步骤:
1. 本地安装git客户端;
2. 创建远程仓库;
3. 绑定本地github用户;
4. 创建本地到github远程仓库的ssh连接秘钥;
5. 将 SSH 密钥添加到 GitHub 帐户;
6. 测试 SSH 连接;
7. 创建本地git仓库;
8. 关联github仓库;
9. 上传本地项目到github。
下面分别介绍每一步骤的详细操作。
1. 安装git客户端
若已经安装,可跳过此节。
客户端下载地址:https://git-scm.com/downloads/
根据不同的平台,下载不同的客户端进行安装。
在Linux平台下,也可以直接下载git源码进行安装,源码下载地址:
https://mirrors.edge.kernel.org/pub/software/scm/git/
2. 创建远程仓库
登录github,登录地址:https://github.com/
点击New repository 新建一个项目
Repository name: 仓库名称
Description(可选): 仓库描述介绍
Public, Private : 仓库权限(公开共享,私有或指定合作者)
Initialize this repository with a README: 添加一个README.md
gitignore:不需要进行版本管理的仓库类型,对应生成文件.gitignore
license: 证书类型,对应生成文件LICENSE
3. 绑定本地github用户
(1)打开终端(Linux)或Git Bash(Windows)
(2)运行以下命令(用户和邮箱为你github注册的账号和邮箱)
$ git config --global user.name "yourname"
$ git config --global user.email"[email protected]
4. 创建本地到github远程仓库的ssh连接秘钥
(1)打开终端(Linux)或Git Bash(Windows)
(2)粘贴下面的文本(替换为您的 GitHub 电子邮件地址)
$ ssh-keygen -t rsa -b 4096 -C "[email protected]"
这将创建以所提供的电子邮件地址为标签的新 SSH 密钥。
> Generating public/private rsa key pair.
提示您“Enter a file in which to save the key(输入要保存密钥的文件)”时,按 Enter 键。 这将接受默认文件位置。
> Enter a file in which to save the key (/home/you/.ssh/id_rsa): [Press enter]
在提示时输入安全密码。 更多信息请参阅“使用 SSH 密钥密码”。
> Enter passphrase (empty for no passphrase): [Type a passphrase]
> Enter same passphrase 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 and GPG keys(SSH 和 GPG 密钥)
(4)单击 New SSH key(新 SSH 密钥)或 Add SSH key(添加 SSH 密钥)
(5)在"Title"(标题)字段中,为新密钥添加描述性标签。 例如,如果您使用的是个人 Mac,此密钥名称可能是 "Personal MacBook Air"。
(6)将密钥粘贴到 "Key"(密钥)字段。
(7)单击 Add SSH key(添加 SSH 密钥)。
(8)如有提示,请确认您的 GitHub 密码。
6. 测试 SSH 连接
(1)打开终端(Linux)或Git Bash(Windows)
(2)输入以下内容:
$ ssh [email protected]
对 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
> provide shell access.
7. 创建本地git仓库
(1)打开终端(Linux)或Git Bash(Windows)
(2)进入本地要上传的工程目录下,依次执行
$ git init
$ git add * (此操作是把Test文件夹下面的文件都添加进来)
$ git commit -m “提交信息”
8. 关联github仓库
执行以下命令,将本地项目关联到指定的github仓库
$ git remote add origin [email protected]:yourname/project.git
其中yourname/project.git为您在github上创建的仓库地址
9. 上传本地项目到github
执行以下命令,将本地项目上传到github
$ git push -u origin master
有时,你会看到如下的错误信息
error:failed to push some refs to …'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote 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