git
撤销工作区的修改
git checkout -- <file>
git checkout .
撤销 commit
reset 不加路径撤销 commit
# 撤销 commit, 回退到上一次 commit, 保留工作区和暂存区的修改
git reset HEAD~1 --soft
# 撤销 commit, 回退到上一次 commit, 保留工作区的修改, 不保留暂存区的修改, 相当与回退到 add 前的状态
git reset HEAD~1
# 撤销 commit, 回退到上一次 commit, 不保留工作区和暂存区的修改
git reset HEAD~1 --hard
撤销 add .
reset 加路径将跳过撤销 commit
git reset HEAD <file>
git reset .
撤销工作区的新建文件
# 删除 untracked files
git clean -f
# 连 untracked 的目录也一起删掉
git clean -fd
# 连 gitignore 的 untrack 文件/目录也一起删掉 (慎用,一般这个是用来删掉编译出来的 .o之类的文件用的)
git clean -xfd
# 在用上述 git clean 前,墙裂建议加上 -n 参数来先看看会删掉哪些文件,防止重要文件被误删
git clean -nxfd
git clean -nf
git clean -nfd
撤销 commit 后提交
git push origin <xx> -f
reset --hard 版本回退后,只是本地回退。push 的时候加-f 参数,将远端代码也进行回退。不加参数 push 不了。
撤销某次提交
git revert <commit id>
反做一个版本,以达到撤销该版本修改的目的。比如,我们 commit 了三个版本(版本一、版本二、 版本三),突然发现版本二不行(如:有 bug),想要撤销版本二,但又不想影响撤销版本三的提交,就可以用 git revert 命令来反做版本二,生成新的版本四,这个版本四里会保留版本三的东西,但撤销了版本二的东西。revert 是回滚某个 commit ,不是回滚“到”某个。
新建/删除本地分支
# 新建本地分支
git branch -b <branch-name>
# 删除本地分支
git branch -d <branch-name>
基于远端分支在本地新建同名分支
git pull
git checkout <origin-branch-name>
git pull 将远端仓库和本地仓库同步, 本地仓库有了远端新仓库的记录. 之后再 checkout
将所有文件从版本库里移除
git rm -r --cached .
将所有文件从版本库里移除,-r 表示递归,深入文件内部。
之后再运行git add .
和git commit
后,新的.gitignore 规则就会生效。
合并分支(不带分支提交记录)
git merge --squash another
将 another 分支上的多个 commit 合并成一个,放在当前分支上,原来的 commit 历史则没有拿过来,需要填写一个 commite 记录。
部分提交合并分支
git cherry-pick
你需要另一个分支的所有代码变动,那么就采用合并(git merge)。另一种情况是,你只需要部分代码变动(某几个提交),这时可以采用 Cherry pick。
git cherry-pick <commitHash>
上面命令就会将指定的提交 commitHash,应用于当前分支。这会在当前分支产生一个新的提交,当然它们的哈希值会不一样。
npm
查看全局安装的 npm 包
npm list [-g] --depth 0
查看[全局]安装的 npm 包,depth 0 表示查看最外层的包,depth 1 展开一层看看这些模块各自又依赖了哪些模块,以此类推。
Linux
在文件中写入内容
# 将内容"xxx"写入 file-name.txt 文件中,覆盖写入。
echo "xxx" > file-name.txt
# 将内容"xxx"写入 file-name.txt 文件中,追加写入,echo 自动加换行。
echo "xxx" >> file-name.txt
显示终端中运行过的命令
history
创建新文件
touch file-name
touch 命令用于修改文件或者目录的时间属性,包括存取时间和更改时间,若文件不存在,系统会建立一个新的文件。
也就是说该命令将文件的最后更改时间设置为系统当前时间。
结束进程
kill -9 PID
结束指定 PID 的进程,mac 可以打开活动监视器查看进程 PID。
列出文件夹内的文件信息
ls -l
显示当前目录路径
pwd
查询端口号的占用情况
lsof -i tcp:<端口号>
查询端口号的占用情况,会显示出 PID,方便 kill。