删除已推到远程分支的提交
git log
复制需要回滚的commit_id,把HEAD指向这个commit_id并强制推送
1 2
| git reset --hard [commit_id] git push origin HEAD --force
|
交互式命令
1
| echo "输入要回滚的commit id" && read id && git reset --hard $id && git push origin HEAD --force
|
强制更新
抛弃当前所有的变更并更新
1 2 3
| git fetch --all git reset --hard origin/[分支名称] git pull
|
交互式命令
1
| echo "输入要更新的分支(default: master)" && read input && branch=${input:=master} && echo 从"$branch"拉取更新 && git fetch --all && git reset --hard origin/"$branch" && git pull
|
克隆到非空文件夹
1 2 3 4
| git clone --no-checkout [git_url] tmp mv tmp/.git . rmdir tmp git reset --hard HEAD
|
交互式命令
克隆并覆盖当前文件夹
1
| echo "输入要克隆的URL" && read url && echo 克隆"$url"到当前文件夹 && git clone --no-checkout $url tmp && mv tmp/.git . && rmdir tmp && git reset --hard HEAD
|
更改全局用户名和邮箱
全局用户名
1
| git config --global user.name "[用户名]"
|
全局邮箱
1
| git config --global user.email "[邮箱地址]"
|
给Github设置SSH代理
来源:https://gist.github.com/chuyik/02d0d37a49edc162546441092efae6a1
修改或创建config
设置Github走1080端口
1 2 3 4 5 6 7 8 9 10 11
| // macOS Host github.com HostName github.com # Socks5 ProxyCommand nc -x 127.0.0.1:1080 %h %p
// Windows Host github.com HostName github.com # Socks5 ProxyCommand connect -S 127.0.0.1:1080 %h %p
|