将本地代码上传至Github
步骤一:创建 GitHub 仓库
- 登录 GitHub
- 点击右上角的 “➕” → “New repository”
- 填写仓库名称(Repository name),选择 Public 或 Private
- 不要勾选 “Initialize this repository with a README”(因为我们本地已有代码)?
- 点击 Create repository
步骤二:在本地初始化 Git 仓库
假设你已经在本地有一个项目文件夹,操作如下:
1 2
| cd /path/to/your/project git init
|
设置全局 Git 用户信息
在提交代码前(只需设置一次):
1 2
| git config --global user.name "你的GitHub用户名" git config --global user.email "你的GitHub绑定邮箱"
|
后续删除Git用户信息:
1 2
| git config --global --unset user.name git config --global --unset user.email
|
你可以用以下命令查看当前有效的设置:
1
| git config --list --show-origin
|
它会显示设置来源:
1 2
| file:/home/你的用户/.gitconfig user.name=xxx file:.git/config user.email=xxx@example.com
|
添加 .gitignore
文件和项目文件到暂存区
- 在项目根目录创建
.gitignore
文件,不同语言的模板
- 写入你要忽略的规则
- 然后执行:
1 2
| git add .gitignore git add .
|
提交并推送
1 2 3 4
| git commit -m "Initial commit" git remote add origin https://github.com/你的用户名/你的仓库名.git git branch -M main git push -u origin main
|
后续更新
1 2 3
| git add . git commit -m "你的更新说明" git push
|
分支相关操作命令
目的 |
命令 |
创建新分支 |
git branch new-branch |
切换到某分支 |
git checkout branch-name |
创建并切换 |
git checkout -b new-branch |
删除本地分支 |
git branch -d branch-name |
强制删除(不合并也删) |
git branch -D branch-name |
重命名当前分支 |
git branch -m new-name |
对比:“本地分支” vs “远程分支”
名称 |
举例 |
存在哪里 |
描述 |
本地分支 |
main |
你电脑上 |
你写代码时所在的分支 |
远程分支 |
origin/main |
GitHub 等远程仓库 |
从远程同步下来的版本(只读) |
本地追踪分支 |
main → origin/main |
你电脑上 |
本地分支与远程分支关联后,push/pull 会自动同步 |
https://code.visualstudio.com/docs/sourcecontrol/github
其他
克隆远程仓库
1
| git clone https://github.com/rpl-cmu/normalflow.git
|
查看当前工作区状态
查看文件改动内容
添加文件到暂存区并提交
1
| git commit -a -m "message"
|
分支管理
查看分支列表
创建并切换到新分支
切换分支
合并分支:
4.5 删除本地分支
1 2
| git branch -d 分支名称 git branch -D 分支名称
|
4.6 从旧分支创建新分支
1
| git checkout -b 新分支名称 旧分支名称
|
远程操作
查看远程仓库
添加远程仓库
1
| git remote add origin 仓库地址
|
推送本地分支到远程
拉取远程更新
删除远程分支
1
| git push origin --delete 分支名称
|
版本历史和日志
查看提交日志
1 2 3
| git log git log --oneline git log --graph --oneline --all
|
查看某个文件的提交历史
其他常用操作
回退到上一次提交
1 2 3
| git reset HEAD^ git reset --soft HEAD^ git reset --hard HEAD^
|
暂存当前修改
1 2
| git stash git stash pop
|
标签
1 2 3
| git tag 标签名 git push origin 标签名 git tag
|
comment:
- 不建议命令行。即使是现查现用也容易错。常用IDE本身都有Git的图形化操作功能。像VSCode这样的还会有一些额外的插件(推荐Git Graph和Git Lens),还有source tree 更直观
- GUI 看不懂一点,反而是 CLI 最清晰,还 flex,同事知道你手搓 git 命令之后 PR 上不敢多点一个 comment 或者 block
- 用小乌龟啊