Abstract
Keywords Reprint  Github  技术笔记 
Citation Yao Qing-sheng.如何将本地项目上传到 Github.FUTURE & CIVILIZATION Natural/Social Philosophy & Infomation Sciences,20191202. https://yaoqs.github.io/20191202/ru-he-jiang-ben-di-xiang-mu-shang-chuan-dao-github/

Reprint from https://www.cnblogs.com/smfx1314/p/8426115.html

使用 git 上传文件到 GitHub 需要 git 客户端以及注册 GitHub 账号。

下面是具体的操作步骤:

  • 第一步:我们需要先创建一个本地的版本库(其实也就是一个文件夹)。你可以直接在桌面右击新建文件夹,也可以右击打开 Git bash 命令行窗口通过命令来创建。现在我通过命令行在桌面新建一个 test 文件夹(你也可以在其他任何地方创建这个文件夹),并且进入这个文件夹
  • 第二步:
    • 在命令行中输入 git init 把这个文件夹变成 Git 可管理的仓库。这时你会发现 test 里面多了个.git 文件夹,它是 Git 用来跟踪和管理版本库的,因为它默认是隐藏文件,要是看不到就设置下文件夹和搜索选项。
    • 之后把需要上传到 GitHub 的文件全部复制到这 test 这个目录下。
    • 然后通过 git add .(注意这个 ".“,是有空格的,”." 代表这个 test 这个文件夹下的目录全部都提交。你也可以通过 git add 文件名 提交指定的文件) 把文件添加到缓存区或者指定具体文件提交.
    • 然后可以通过 git status 命令,查看下现在的状态。看到有 css,js 文件夹的内容都提交上去了。
    • 然后,在使用命令 git commit -m “这里面写你的注释” 把文件提交的本地仓库
  • 第三步:下面就到了连接远程仓库(也就是连接 Github)
    • 由于本地 Git 仓库和 Github 仓库之间的传输是通过 SSH 加密的,所以连接时需要设置一下:创建 SSH KEY。先看一下你 C 盘用户目录下有没有.ssh 目录,有的话看下里面有没有 id_rsa 和 id_rsa.pub 这两个文件,有就跳到下一步,没有就通过下面命令创建
    • 然后一路回车。这时你就会在用户下的.ssh 目录里找到 id_rsa 和 id_rsa.pub 这两个文件
1
$ ssh-keygen -t rsa -C "youremail@example.com"
  • 第四步:登录 Github, 找到右上角的图标,打开点进里面的 Settings,再选中里面的 SSH and GPG KEYS,点击右上角的 New SSH key,然后 Title 里面随便填,再把刚才 id_rsa.pub 里面的内容复制到 Title 下面的 Key 内容框里面,最后点击 Add SSH key,这样就完成了 SSH Key 的加密。
  • 第五步:在 Github 上创建一个 Git 仓库。你可以直接点 New repository 来创建,比如我创建了一个 tes2t 的仓库。
  • 第六步:在 Github 上创建好 Git 仓库之后我们就可以和本地仓库进行关联了,根据创建好的 Git 仓库页面的提示,可以在本地 test 仓库的命令行输入:
1
$ git remote add origin git@github.com:smfx1314/test2.git
  • 第七步:关联好之后我们就可以把本地库的所有内容推送到远程仓库(也就是 Github)上了,通过:
1
$ git push -u origin master

由于新建的远程仓库是空的,所以要加上 - u 这个参数。然后进去 GitHub test2 这个仓库刷新下就会有已经上传的文件夹了。如果新建远程仓库不是空的,例如你勾选了 Initialize this repository with a README。那么你通过命令 $ git push -u origin master 是会报错的,这是由于你新创建的那个仓库里面的 README 文件不在本地仓库目录中,这时我们可以通过以下命令先将内容合并以下:

1
$ git pull --rebase origin master

再输入

1
$ git push origin master

等远程仓库里面有了内容之后,下次再从本地库上传内容的时候只需下面这样就可以了:

1
$ git push origin master

至此就完成了将本地项目上传到 Github 的整个过程。

References