常用命令与技巧(git/svn/vim等)
1、git
1.1、推代码
git checkout 文件名 ==============回退某文件修改
git add 需要添加的文件路径
git commit -m "xxxxxx" ============生成conmit信息
git push origin HEAD:refs/for/master ==========将代码推送到分支master最新节点上
1.2、去除git add添加的文件
去除git add修改 git rm --cached “文件路径”,不删除物理文件,仅将该文件从缓存中删除; git reset 也可以 git rm --f “文件路径”,不仅将该文件从缓存中删除,还会将物理文件删除
1.3、去掉每行结尾的^M
windows和linux行结尾差异导致
%s/^M//g 或者 %s/\r//g 然后esc退出 :wq保存退出 git diff 去掉匹配换行差异 git config --global core.whitespace cr-at-eol
1.4、git push 失败
push 失败:显示 error Missing tree
git push 后增加 --no-thin https://opendev.org/opendev/git-review/commit/39cd763d5d3ae310b00e54f6fc24eba993ed57f5 这是gerrit的一个bug,丢失了git tree ,gerrit在推送是默认是采用thin,将发生的包降低到最低,忽略本地和远端文档公共部分。
1.5、git status 只显示被跟踪文件
git status -uno
1.6、更新代码、回退代码
git pull --all 更新所有分支
git pull origin xxxx 更新远端分支xxx到本地
2、svn
3、vim
3.1 设置tab为4个空格
set ts=4 set expandtab set autoindent
3.2 粘贴代码取消自动缩进
1,在拷贝前输入:set paste (这样的话,vim就不会启动自动缩进,而只是纯拷贝粘贴) 2,拷贝完成之后,输入:set nopaste (关闭paste)
3.3 替换某字符串(全部替换)
将dev替换成mydev
:%s/dev/mydev/g