Git操作 - 删除untracked files
删除 untracked files
1git clean -f
连 untracked 的目录也一起删掉
1git clean -fd
连 gitignore 的untrack 文件/目录也一起删掉 (慎用,一般这个是用来删掉编译出来的 .o之类的文件用的)
1git clean -xfd
在用上述 git clean 前,墙裂建议加上 -n 参数来先看看会删掉哪些文件,防止重要文件被误删
1git clean -nxfd 2git clean -nf 3git clean -nfd**
针对公司或者GitHub设置不同的提交账号
进入项目目录
1git config user.name "wmsjhappy@gmail.com" 2git config user.email clibing
会在当前目录.git/config会生成提交的账号和邮箱地址
跳过证书的验证
1git config --global http.sslVerify false
修改上一次已经提交的记录
1git commit --amend
覆盖本地master与服务器一致
1git fetch --all && git reset --hard origin/master && git pull
彻底删除某个敏感信息,包括历史提交记录 参考
1brew install git-filter-repo 2 3git filter-repo --invert-paths --path 需要删除的文件(是相对项目的路径,不要以/开头) 4 5git rebase -i HEAD~5 需要修改当前分支的提交点~-5个提交, pick->edit修改提交记录, 修改pick->squash会合并多个提交记录
当commit msg不符合规范的是否需要修复commit
1git rebase -i HEAD~3 # 代表修改当前分支最近3个commit的message
2提交后按照提示执行
3 单条修改,需要将'pick' -> 'edit'
4 多条合并修改,需要将'pick' -> 'squash'
5保存退出
6
7git commit --amend 修改内容
8
9git rebase --continue
- 查看tag的列表,展示时间
1git log --tags --simplify-by-decoration --pretty="format:%ai %d"
- Git push
send-pack: unexpected disconnect while reading sideband packet 107 致命错误:远端意外挂断了
1git push
会提示如下问题
1枚举对象中: 39, 完成.
2对象计数中: 100% (30/30), 完成.
3使用 4 个线程进行压缩
4压缩对象中: 100% (15/15), 完成.
5写入对象中: 100% (17/17), 171.37 KiB | 17.14 MiB/s, 完成.
6总共 17(差异 11),复用 0(差异 0),包复用 0
7错误:RPC 失败。curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)
8send-pack: unexpected disconnect while reading sideband packet
9致命错误:远端意外挂断了
10Everything up-to-date
需要设置为HTTP1.1即可
1git config http.version HTTP/1.1
- 清理当前仓库未跟踪、忽略的文件
13.1 可选参数
- -n 不要删除任何内容,只显示将要删除的内容
- -f 强行删除文件
- -d 考虑未跟踪的目录以及未跟踪的文件
- -x 还要考虑被忽略的未跟踪文件.gitignore
13.2 查看将要删除文件列表
git clean -n
:仅列出未跟踪的文件,忽略.gitignore中的文件.git clean -n -d
:列出未跟踪的文件和文件夹,忽略中的.gitignore文件git clean -n -x
:列出所有未跟踪的文件,包括被忽略的文件.gitignore。git clean -n -d -x
:列出所有未跟踪的文件和文件夹,包括被忽略的文件和文件夹.gitignore
13.3 从存储库中删除文件
git clean -f
: 只删除未被.gitignoregit clean -f -d
: 删除未跟踪的文件和文件夹,不删除.gitignore的文件git clean -f -x
: 删除所有未跟踪的文件,包括那些被忽略的文件.gitignore。git clean -f -d -x
: 删除所有未跟踪的文件和文件夹,包括那些被忽略的文件和文件夹.gitignore。
评论