准备工具
最后更新于:2023年2月24日 下午
编译器的一些参数
很多可以设置的,然后越严格越能检测出不少的错误,当然了版本越高的编译器,默认要求越严格,这也是为什么很多工程不能升级编译器的版本,不然会很麻烦。
正则表达式
在 VScode 中
- 把单行
{
风格去掉的正则表达式\n[ ]+\{
(但是有注释就有点尴尬了) - 强制让
if
的内容包起来:[ ]+if .*[\)|;]$
(但是分成多行就尴尬了)
不要企图全局替换,format 全部代码是大忌!
Git 常见命令
添加 SSH 并复制到剪切板
1 |
|
然后把它粘贴到自己的 setting 的 SSH 中
SSH 验证
1 |
|
unset
取消 config,例如
1 |
|
多账号 git
可参考:腾讯云社区
但是更好的方式就是一个 ssh 多用,然后用 ssh-add ~/.ssh/id_rsa
后提交,然后后来提交失败,再 add 一次即可
配置全局用户
1 |
|
这是不提倡的,应该每一个 git 仓库设置各自的 user.name 和 user.email
根据需要配置 .gitignore
文件
第一次提交
1 |
|
利用 Python 一键更新(弃用,这个习惯并不好)
1 |
|
强制提交
1 |
|
使本地文件和远程一致
1 |
|
删除已经被跟踪但要放在 .gitignore
的文件
1 |
|
删除 untracked files
1 |
|
回档
三种方式:
- 去 github 网站,查看版本号,然后执行
git reset --hard <版本号>
- git reflog 查看回档编号,然后
git reset --hard HEAD@{编号}
- git reset –-hard HEAD ^ ( ^ 表示回到上一个版本,^^ 表示回到上上个版本)
最后记得强制提交
找回 git reset --hard
后的代码
新建分支
- 创建新分支:
git branch [branch name]
- 切换到新分支:
git checkout [branch name]
- 创建+切换分支:
git checkout -b [branch name]
- 删除本地分支:
git branch -d [branch name]
- 删除远程分支:
git push origin :[branch name]
- 分支提交:
git push origin [branch name]
扩大传输限制
fatal: 过早的文件结束符(EOF)
1 |
|
cherry-pick
merge 进了某个版本 A,要在另一个版本 B cherry-pick 的做法
- 进入 B 版本目录创建一个分支,然后在这个分支上 执行
git cherry-pick [commit id]
- 然后把冲突修改一下,然后
git add .
,再git cherry-pick --continue
即可
如果 cherry-pick 报 bad object 可能是因为代码还没更新 git pull 一下即可,如果还不行可能是因为 repo 弄错了
patch
类似与 cherry-pick,我们把自己的修改丢给别人,可以建分支让他人 cherry-pick 也可以生成一个 change.patch
文件,让别人直接应用。
生成实例:
1 |
|
git format-patch --help
可以看更详细的操作。git format-patch
的方式附带了 author 信息,git diff 自然没有,因为它还没有 commit 也就不可能有作者的信息
应用实例(方式一):
- 检查 patch 文件是否合规:
git apply --stat xxx.patch
- 检查是否有冲突:
git apply --check xxx.patch
- 应用:
git apply xxx.patch
结束后需要自己手动去 add
, commit
应用实例(方式二):
对于 git format-patch 获取的 patch 文件,可以使用 git am xxx.patch
一步到位(此时的 author 和 commitMessage 的作者一致)
杂类
Unix-like man 命令后面的数字含义及作用
序号 | 意义 | 详解 |
---|---|---|
1 | commands | 普通的命令 |
2 | system calls | 系统调用,如open, write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件) |
3 | library calls | 库函数,如 printf, fread |
4 | special files | 特殊文件,也就是 /dev 下的各种设备文件 |
5 | file formats and convertions | 文件的格式,比如 passwd,就会说明这个文件中各个字段的含义 |
6 | games for linux | 给游戏留的,由各个游戏自己定义 |
7 | macro packages and conventions | 附件还有一些变量,比如向 environ 这种全局变量在这里就有说明 |
8 | system management commands | 系统管理用的命令,这些命令只能由 root 使用,如 ifconfig |
9 | others |
参考 https://blog.csdn.net/qq_21792169/article/details/50412417
Python 开服务器共享文件
- python3:
python -m http.server 8000
- python2:
python -m SimpleHTTPServer 8000
文件查找非 ASCII 字符
利用正则表达式搜索:[^\x00-\x7f]
Windows 命令行复制到剪切板
[命令] | clip
[命令] > a.txt
到文本后复制- 开启快速编辑,选中后+右键复制,直接右键是粘贴(所有系统均适用)
Linux 删除指定类型文件
find -name '文件名或目录名' | xargs rm -rf
Windows 批处理将 A 文件夹下所有文件全部复制(移动对应修改 copy 为 move 即可)到 B 文件夹中
1 |
|
Windows 批处理添加 zip 后缀
1 |
|
网站二维码(欢迎扫码)
制作方法:
1 |
|