git笔记
第一次提交代码
git init
git remote add origin git@gitee.com:imxood/stm32h750_rt_app.git
git pull origin master
git branch --set-upstream-to=origin/master
git add .
git commit -m "."
git push
远程url变更, 更新本地 origin
git remote set-url origin GIT_URL
warning: CRLF will be replaced by LF
git config --global core.autocrlf false
执行 git status 时 中文路径乱码解决:
git config --global core.quotepath false
分支管理
Pr修改
# 提交了Pr, 有错误, 你想修改, 那么可以先在你的分支上, 回退之前的一个版本:
git reset HEAD~1
# 添加新修改, 并提交
git add .
git commit -m "..."
# 强制提交, 覆盖之前错误的提交
git push -f
# push之后, 你的这次提交也会自动更新pr记录
删除分支
# 删除本地分支
git branch -d localBranchName
# 删除远程分支
git push origin --delete remoteBranchName
# 删除后 同步分支
git fetch -p
创建空的新分支
git checkout --orphan main, 创建没有commits的孤儿分支
git add . && git commit -m "."
git push --set-upstream origin main
创建没有提交记录的新分支 并用这个分支 覆盖主分支
git checkout --orphan master, 创建没有commits的孤儿分支
git add . && git commit -m "."
git reset --hard master
git push -f, 强制提交本地记录
git remote
git remote -v, 显示当前远程仓库信息
git remote set-url origin https://github.com/imxood/mdbook-katex.git, 设置远程仓库
workflow
github reset api
参考: getting-started-with-the-rest-api
# 不使用认证将只有每小时60次请求的限制
curl -i https://api.github.com/users/imxood
# 使用认证将有每小时5000次请求
curl -i -u username:$token https://api.github.com/users/octocat
# Shell - Get latest release from GitHub
curl --silent "https://api.github.com/repos/$1/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")'
github actions
环境文件
\$GITHUB_PATH, 用于添加系统路径
GITHUB_PATH 这个环境变量表示一个环境变量文件, 所有后续操作将会将这个文件中的值添加到系统Path中.
echo "{path}" >> \$GITHUB_PATH
或者是 打开 \$GITHUB_PATH 文件, 写路径
\$GITHUB_ENV, 用于设置环境变量
跟上面是类似的.
echo "{name}={value}" >> \$GITHUB_ENV
同步fork上游的代码
# 查看远程状态
git remote -v
# 添加 fork的上游仓库
git remote add upstream https://github.com/larksuite/rsmpeg.git
# 再次 查看状态是否被添加
git remote -v
# 获取上游的更新, 会被存储到本地分支 upstream/master
git fetch upstream
# 切换到本地要merge的分支 master
git checkout master
# 把 upstream/master 分支 merge 到本地 master
git merge upstream/master
# 提交
git push origin master