Git / GitHub 的基本使用
本文论述通过 Git 管理本地项目文件并上传到 GitHub 的基本过程。
Git 初始化
Git 下载安装
参考 Git 详细安装教程(详解 Git 安装过程的每一个步骤)_git安装-CSDN博客。
Git 用户名、邮箱配置
git config --global user.name "JanTang"git config --global user.email "[email protected]"TIP
请将 JanTang 和 [email protected] 替换为自己的昵称和邮箱,可以不和 GitHub 的昵称和邮箱一致。
使用 Git 管理本地仓库
创建项目
在本地创建项目文件夹,正常进行项目文件开发。
我创建了名为 hello 的文件夹,写了一个输出 Hello, world 的简单 C++ 程序:

init
使用 init 命令进行本地 Git 仓库初始化。
git init执行完 git init 后,在文件夹中会出现名为 .git 的文件夹:

add
使用 add 命令将项目内容 (与 .git 同目录的 文件/文件夹) 添加到本地暂存区。
git add .可以用 status 命令查看当前的工作树状态。

commit
使用 commit 将项目内容从暂存区提交到本地 Git 仓库,initial commit 是提交注释。
git commit -m "initial commit"
至此,已经可以通过 Git 在本地进行项目的版本控制了。
接下来讲述本地仓库如何上传到 GitHub 远程仓库。
GitHub 上创建仓库
GitHub 的注册及 SSH 绑定
在 GitHub 创建一个仓库,名字最好和本地库的一样。
推荐勾选上 Add a README file,.gitignore 和 license 可以不选,保持为 None。


然后点击 Create repository 即可创建一个 GitHub 仓库。
本地 Git 仓库上传到 GitHub 远程库
本地 commit 后,可以通过 push 上传到 GitHub 远程库。
用 remote 给远程库起别名
使用 remote 命令给远程库起别名。
git remote add origin [email protected]:tangjan/hello.git其中 GitHub 仓库的 SSH url 来自:

使用 git remote -v 查看远程库列表详细信息。

用 branch 修改主分支名称,push
本节内容参考自:
本地 Git 仓库默认主分支的名称是 master,而 Github 仓库默认主分支的名称是 main,二者名称不一致,这时如果 push 会提示 error: src refspec main does not match any:

解决方法是通过 branch 命令将本地主分支的名称从 master 修改为 main:
git branch -m master main之后还存在一个问题:GitHub 远程库和本地库的内容不一致,导致无法 push:

解决方法:
git fetch origingit merge --allow-unrelated-histories origin/main

然后就可以看本地库中多了缺少的 README.md:

然后就可以通过 push 将本地库上传到 GitHub 远程库了:
git push origin main
push 命令执行成功后,可以看到 GitHub 仓库里已经成功上传了本地库的项目内容:
