Git特殊使用场景命令

转载请注明出处
https://blog.csdn.net/aa464971/article/details/103779662

删除已推到远程分支的提交

git log复制需要回滚的commit_id,把HEAD指向这个commit_id并强制推送

git reset --hard [commit_id]
git push origin HEAD --force

交互式命令

echo "输入要回滚的commit id" && read id && git reset --hard $id && git push origin HEAD --force

强制更新

抛弃当前所有的变更并更新

git fetch --all
git reset --hard origin/[分支名称]
git pull

交互式命令

echo "输入要更新的分支(default: master)" && read input && branch=${input:=master} && echo 从"$branch"拉取更新 && git fetch --all && git reset --hard origin/"$branch" && git pull

克隆到非空文件夹

git clone --no-checkout [git_url] tmp
mv tmp/.git .
rmdir tmp
git reset --hard HEAD

交互式命令

克隆并覆盖当前文件夹

echo "输入要克隆的URL" && read url && echo 克隆"$url"到当前文件夹 && git clone --no-checkout $url tmp && mv tmp/.git . && rmdir tmp && git reset --hard HEAD

更改全局用户名和邮箱

全局用户名

git config --global user.name "[用户名]"

全局邮箱

git config --global user.email "[邮箱地址]"

给Github设置SSH代理

修改或创建config

vi ~/.ssh/config

设置Github走1080端口

Host github.com
ProxyCommand nc -X 5 -x 127.0.0.1:1080 %h %p
发布了51 篇原创文章 · 获赞 126 · 访问量 71万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章