Git命令
基础
-
~
用户目录(Linux,Unix没有盘符的概念,所有的硬盘都是用/来表示) -
/
整个硬盘 -
.
当前目录 -
..
父目录
常用命令
cd ~/Desktop
进入桌面
mkdir demo-1
创建目录demo-1
mkdir -p "demo-2/demo-3/demo-4"
和mkdir -p demo-2/demo-3/demo-4
效果一样,创建多层目录
mkdir "demo 2"
创建目录demo 2
rm -rf demo-1
删除目录demo-1
touch 1.txt
创建文件1.txt (touch
可以改变文件创建时间)
mv 1.txt 2.txt
将1.txt重命名为2.txt
whoami
获取用户名
echo 'hello'> a
向a文件写入hello
echo 'hi'>> a
向a文件追加写入hi
ls
显示文件
ls -a
显示所有文件(包括隐藏文件,一般以.开头)
ls -l
显示更多文件信息
ls -al
ls -la
显示更多文件信息 及隐藏文件
cp
复制文件
cp -r
复制目录
rm
删除文件
rm -r
删除目录
rm -f
强制删除文件
rm -rf
强制删除目录
mv 源路径 目标路径:移动节点
tree
查看目录结构(tree 后面什么都不加表示查看当前目录结构。Windows不支持)
ln -s
建立软链接(可以理解为快捷方式,但其实不是。Windows不支持)
curl -L https://code.jquery.com/jquery-3.3.1.min.js>1.js
下载文件
wget -p -H -e robots=off https://www.baidu.com
拷贝网页
df -kh
显示磁盘占用
du -sh
显示当前目录大小
du -h
详细显示各文件大小
cat
查看文件内容
history
查看执行命令的历史
type file
显示寻找文件的结果
which file
显示寻找文件的过程
chmod +x file
给file一个可执行权限
Git命令
git init
,初始化本地仓库.git
git status -sb
,显示当前所有文件的状态
git add
,用来将变动加到暂存区
git commit -m "信息"
,用来正式提交变动,提交至 .git 仓库
git log
,查看变更历史
git clone [git@github.com](mailto:git@github.com "null"):xxxx
,下载仓库
其他一些有用的命令
git remote add origin git@github.com:xxxxxxx.git
将本地仓库与远程仓库关联
git remote set-url origin git@github.com:xxxxx.git
上一步手抖了,可以用这个命令来挽回
git branch
新建分支
git merge
合并分支
git stash
通灵术
git stash pop
反转通灵术
git revert
后悔了
git reset
另一种后悔了
git diff
查看详细变化
快捷键
- <kbd>↑</kbd> <kbd>↓</kbd> 上一命令 / 下一命令
- <kbd>!</kbd><kbd>!</kbd> 上一命令占位符
- <kbd>Tab</kbd> 自动补全路径
- <kbd>Alt</kbd>+<kbd>.</kbd> 上一命令的最后一个参数
-
&&
前面的执行成功了,才会执行后面的 -
||
前面的执行失败了,就执行后面的 -
;
前面执行完了,不管成功失败,就执行后面的 -
>
重定向 -
|
管道
Vim
强制退出(不保存):狂按<kbd> ESC</kbd>,然后按下:q!
回车
保存后退出:狂按 <kbd> ESC</kbd>,然后按下:wq
回车
了解更多命令
Google搜索:例如搜索 “linux 查看文件内容”
访问:explainshell.com
安装tldr
,tldr cat
快速了解cat命令的用法
技巧:
- 学会利用
~/.bashrc
文件:
每次进入 Git Bash,会优先运行~/.bashrc
里面的命令,所以可以做以下设置,设置完记得source ~/.bashrc
或重启git bash。
1.在~/.bashrc里写入cd ~
,以后每次启动git bash就会自动进入~
2.在~/.bashrc里写alias gst='git status -sb'
,以后执行gst 就相当于执行 git status -sb 了
3.设置一些环境变量,设置export SASS_BINARY_SITE="https://npm.taobao.org/mirrors/node-sass"
,安装 node-sass 的时候就不会因为被墙而报错了。
4.设置 PATH, 在PATH 里添加一个目录:
export PATH="目录的绝对路径:$PATH"