Github 笔记

git 和 github 学习笔记

Git和Github

  1. 注册GitHub,下载安装git

  2. 使用git bash,设置用户名和邮箱

    1
    2
    3
    4
    
    git config --global user.name "github上注册的用户名" # 配置用户名
    git config --global user.email "github上注册的邮箱" # 配置用户邮箱
    git config --global user.name # 查看配置的用户名
    git config --global user.email # 查看配置的用户邮箱
    
image-20250226230448725
  1. 获取ssh密钥,一直回车即可

    1
    
    ssh-keygen -t rsa -C "GitHub上注册时的邮箱 "
    
  2. 登录github,然后在设置里找到ssh keys,将获取的公钥粘贴进去。

image-20250301201043306
  1. 先在本地一个文件夹初始化为一个仓库
1
git init
  1. 将这个文件夹里更改的文件添加到仓库暂存区(在文件夹里的文件称为工作区)
1
2
3
4
5
6
7
8
# 添加某一个修改文件
git add updata.txt

# 或者添加所有修改的文件
git add .

# 查看哪些文件在暂存区(不是必须操作)
git status
  1. 将暂存区的文件提交到本地仓库
1
2
3
4
git commit -m "提示信息"

# 查看提交历史
git log
  1. 上面步骤完成本地操作后,下面准备上传github,在github里创建一个仓库,将用于保存本地上传的文件,github仓库名和本地仓库名不用一样,然后检查是否远程添加了本地了公钥
1
ssh -T git@github.com
  1. 如果成功添加了,之后可以连接github远程仓库
1
2
3
4
5
# 假设仓库名为:git@github.com:ruheyun/python_leetcode.git
git remote add origin git@github.com:ruheyun/python_leetcode.git

# 查看当前仓库的远程仓库配置
git remote -v
  1. 连接了远程仓库后,,将远程仓库main分支下所有文件拉取到本地和本地文件合并,防止本地文件上传远端后覆盖了远端已经存在的文件
1
 git pull origin main --rebase
  1. 上传本地仓库
1
git push -u origin main
  1. 当你第一次上传时需要经过上面步骤,以后只有本地仓库和远程仓库不变使用下面命名即可
1
2
3
git add .
git commit -m "xxx"
git push

13.两台电脑协作时

1
2
3
4
5
6
7
8
9
# 本地有文件的电脑,按照上面步骤执行

# 另一台电脑,按照下面执行
1.下载git
2.设置相同的用户名和邮箱
3.获取ssh密钥,添加到github
4.使用 git clone https...
5.改成ssh推拉代码 git remote set-url origin git@github.com:...
6.查看远程连接使用的方式 git remote -v

14.注意使用两台电脑协作时

1
2
3
4
5
6
# 两台电脑都要养成先 pull 再 push 的习惯
git pull origin main

git add .
git commit -m ""
git push origin main

q:本地电脑有两个仓库,连接到同一个Github账号中的两个远程仓库,每次都需要输入git remote add origin吗,还是只需要输入一次,以后直接git push就行?

a:各自只需配置一次远程地址,之后就可以直接 git push 了。

q:当使用另一台电脑提交代码时,GitHub不会计入个人贡献次数(绿色方块)。

a:GitHub 通过提交记录中的邮箱地址来识别贡献者。如果新电脑上配置的 Git 邮箱与 GitHub 账户中绑定的邮箱不一致,贡献将不会显示。

q:GitHub 私有仓库克隆失败:密码认证已停用,这个错误是因为 GitHub 从 2021 年起已不再支持使用账户密码进行 HTTPS 的 Git 操作,必须使用 Personal Access Token (PAT) 或 SSH 密钥 进行认证。

a:方法1,使用ssh下载代码,但是国内可能下载很慢。方法2,登录 GitHub → 右上角头像 → Settings -> 左侧菜单 → Developer settings → Personal access tokens → Tokens (classic) 点击 Generate new token (classic) 填写信息: Note: Laptop-Q6JPM115(便于识别设备) Expiration: 建议选 30~90 天(更安全) Select scopes: 勾选 repo(完整控制私有仓库) 点击 Generate token,立即复制生成的 token(⚠️ 只显示一次!) 然后使用git clone https://… 然后将远程连接协议改为ssh,把生成的token删除即可,以后通过ssh拉取和推送。

15.回退代码

1
2
3
4
5
6
7
8
# 查看提交历史,按 q 退出,enter 翻滚
git log --pretty=oneline

# 找到目标 commit 的 hash,例如 a1b2c3d
git reset --hard a1b2c3d

# 如果之前已 push,强制同步远程
git push origin main --force
image-20260219174606186 image-20260219174628083 image-20260219174647245
根据CC BY-NC-SA 4.0许可
最后更新于 2026-03-15