基础语句单词
| 英文 | 翻译 |
|---|---|
| directory | 目录、文件夹 |
| file | 文件 |
| make | 新建 |
| remove | 删除 |
| move | 移动 |
| copy | 复制 |
| list | 罗列 |
| link | 链接 |
| find | 查找 |
| echo | 发出回音、重复 |
| touch | 触摸 |
| change | 改变 |
| 命令 | 全写 | 缩写 |
|---|---|---|
| 创建目录 | make directory | mkdir |
| 删除 | remove | rm |
| 移动 / 重命名 | move | mv |
| 复制 | copy | cp |
| 罗列 | list | ls |
| 改变目录 | change directory |
| 操作 | 命令 |
|---|---|
| 进入目录 | cd |
| 显示当前目录 | pwd |
| 创建目录 | mkdir 目录名 |
| 创建目录 | mkdir -p 目录路径 |
| 我是谁 | whoami |
| -- | -- |
| 查看路径 | ls 路径 |
| 查看路径 | ls -a 路径 |
| 查看路径 | ls -l 路径 |
| 查看路径 | ls -al 路径 |
| -- | -- |
| 创建文件 | echo '1' > 文件路径 |
| 强制创建文件 | echo '1' >! 文件路径 |
| 追加文件内容 | echo '1' >> 文件路径 |
| 创建文件 | touch 文件名 |
| 改变文件更新时间 | touch 文件名 |
| -- | -- |
| 复制文件 | cp 源路径 目标路径 |
| 复制目录 | cp -r 源路径 目标路径 |
| -- | -- |
| 移动节点 | mv 源路径 目标路径 |
| -- | -- |
| 删除文件 | rm 文件路径 |
| 强制删除文件 | rm -f 文件路径 |
| 删除目录 | rm -r 目录路径 |
| 强制删除目录 | rm -rf 目录路径 |
| -- | -- |
| 查看目录结构 | tree |
| 建立软链接 | ln -s 真实文件 链接 |
| -- | -- |
| 下载文件 | curl -L www.baidu.com > baidu.html |
| 拷贝网页 | wget -p -H -e robots=off www.baidu.com |
| 磁盘占用 | df -kh |
| 当前目录大小 | du -sh . |
| 各文件大小 | du -h |
部分命令win不支持
vim:1、退出不保存:ESC:q! enter
2、退出保存:ESC:wq! enter
使用 git
使用 git 有三种方式,请按照你的需求选择
- 只在本地使用
- 将本地仓库上传到 GitHub
- 下载 GitHub 上的仓库
1 只在本地使用
1.1 初始化
- 创建目录作为我们的项目目录:
mkdir git-demo-1 - 进入目录
cd git-demo-1 git init,这句命令会在 git-demo-1 里创建一个 .git 目录ls -la你就会看到 .git 目录,它就是一个「仓库」,不要进去看,这仓库里面有毒,别进去!- 在 git-demo-1 目录里面添加任意文件,假设我们添加了两个文件,分别是 index.html 和 css/style.css
touch index.htmlmkdir csstouch css/style.css
- 运行
git status -sb可以看到文件前面有 ?? 号这个 ?? 表示 git 一脸懵逼,不知道你要怎么对待这些变动。## Initial commit on master ?? css/ ?? index.html - 使用 git add 将文件添加到「暂存区」
- 你可以一个一个地 add
git add index.htmlgit add css/style.css
- 你也可以一次性 add
git add .意思是把当前目录(.表示当前目录)里面的变动都加到「暂存区」
- 你可以一个一个地 add
- 再次运行
git status -sb,可以看到 ?? 变成了 AA 的意思就是添加,也就是说你告诉 git,这些文件我要加到仓库里## Initial commit on master A css/style.css A index.html - 使用 git commit -m "信息" 将你 add 过的内容「正式提交」到本地仓库(.git就是本地仓库),并添加一些注释信息,方便日后查阅
- 你可以一个一个地 commit
git commit index.html -m '添加index.html'git commit css/style.css -m "添加 css/style.css"
- 你也可以一次性 commit
git commit . -m "添加了几个文件"
- 你可以一个一个地 commit
- 再再次运行
git status -sb,发现没有文件变动了,这是因为文件的变动已经记录在仓库里了。 这时你使用 git log 就可以看到历史上的变动:
commit f0d95058cd32a332b98967f6c0a701c64a00810a Author: frankfang <frankfang1990@gmail.com> Date: Thu Sep 28 22:30:43 2017 +0800 添加几个文件- 以上就是 git add / git commit 的一次完整过程,可以看到,挺复杂的。原则上,你错了任何一步,就给我从头来一遍,做到你不会再手抖为止。
1.2 文件变动
如果我想继续改文件,应该怎么做呢?
start css/style.css会使用默认的编辑器打开 css/style.css(macOS 上对应的命令是open css/style.css)- 然后我们在 css/style.css 里写入
body {background: red},保存退出 - 运行
git status -sb发现提示中有一个 M这个 M 的意思就是 Modified,表示这个文件被修改了## master M css/style.css - 此时你如果想让改动保存到仓库里,你需要先
git add css/style.css或者也可以git add .
注意,由于这个 css/style.css 以前被我们 add 过,你往文章上面看,我们是 add 过 css/style.css 的,所以此处的 git add 操作可以省略,但我建议你使用 git 的前一个月,不要省略 git add。
换句话说,每一次改动,都要经过 git add 和 git commit 两个命令,才能被添加到 .git 本地仓库里。 - 再次运行
git status -sb发现 M 有红色变成了绿色,红色和绿色有啥区别呢?别管它们的区别,记住我说的,先 add,再 commit,等你熟练之后再去理解区别。
先形成肌肉记忆,在去形成大脑记忆! - 运行
git commit -m "更新 css/style.css",这个改动就被提交到 .git 本地仓库了。再说一次,不要去 .git 目录里面,那里的东西你一无所知。 - 再再次运行
git status -sb,会发现没有变更了,这说明所有变动都被本地仓库记录在案了。
这里来透露一下git status -sb是什么意思:git status 是用来显示当前的文件状态的,哪个文件变动了,方便你进行 git add 操作。-sb 选项的意思就是,SB都能看懂,哈,这是开玩笑,-s 的意思是显示总结(summary),-b 的意思是显示分支(branch),所以 -sb 的意思是显示总结和分支。
1.3 总结
至此,我们来总结一下用到的命令
- git init,初始化本地仓库 .git
- git status -sb,显示当前所有文件的状态
- git add 文件路径,用来将变动加到暂存区
- git commit -m "信息",用来正式提交变动,提交至 .git 仓库
- 如果有新的变动,我们只需要依次执行 git add xxx 和 git commit -m 'xxx' 两个命令即可。别看本教程废话那么多,其实就这一句有用!先 add 再 commit,行了,你学会 git 了。
- git log 查看变更历史
2 将本地仓库上传到 GitHub
如何将我们这个 git-demo-1 上传到 GitHub 呢?
- 在 GitHub 上新建一个空仓库,名称随意,一般可以跟本地目录名一致,也叫做 git-demo-1
按照截图所示,除了仓库名,其他的什么都别改,其他的什么都别改,其他的什么都别改,其他的什么都别改,这样你才能创建一个空仓库 - 点击创建按钮之后,GitHub 就会把后续的操作全告诉你
- 点击 SSH 按钮,点击 SSH 按钮,点击 SSH 按钮,我想你现在肯定不会忘了点击 SSH 按钮了吧~~~~如果不点击这个按钮,你就会使用默认的 HTTPS 地址。但是千万不要使用 HTTPS 地址,因为 HTTPS 地址使用起来特别麻烦,每次都要输入密码,而 SSH 不用输入用户名密码。
为什么 SSH 不用密码呢,因为你已经上传了 SSH public key。还记得吗?如果不记得,翻到本文第一部分「配置 GitHub」章节。 - 由于我们已经有本地仓库了,所以看图,图中下面半部分就是你需要的命令,我们一行一行拷贝过来执行
- 找到图中的「…or push an existing repository from the command line」这一行,你会看到
git remote add origin https://github.com/xxxxxxxxxx/git-demo-1.git, 如果你发现这个地址是 https 开头的,那你就做错了,还记得吗,我们要使用 SSH 地址,GitHub 的 SSH 地址是以 git@github.com 开头的。 - 再次点击 SSH 按钮,不管我强调多少遍,总会有人忘记点击 SSH 按钮,为什么呢?我也不知道,为了防止你忘了点击 SSH 按钮,我最后再说一遍,「点击 SSH按钮」,点击之后,整个世界就会变得美好起来。
- 得到新的命令
git remote add origin git@github.com:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/git-demo-1.git,复制并运行它 - 复制第二行
git push -u origin master,运行它 - 刷新当前页面,你的仓库就上传到 GitHub 了!是不是特别简单?只要你按照我说的做,一丝不苟,即可。
- 找到图中的「…or push an existing repository from the command line」这一行,你会看到
3 直接在 GitHub 创建一个仓库,然后下载到本地
上面两步讲了
- 在本地创建仓库
- 将本地仓库上传到 GitHub
这里将第三种用法,那就是直接在 GitHub 创建一个仓库,然后下载到本地。
- 在GitHub 上新建一个仓库 git-demo-2
- 这样一来,这个仓库就会自动拥有三个文件:
- 这三个文件的作用请自行了解:.gitignore 的作用、README.md 的作用 以及 LISENCE 的作用
- 好了,现在远程仓库已经创建好了,怎么下载到我们的本地(也就是我们的电脑上)呢?答案是使用 git clone 命令
- 点击页面中唯一的绿色按钮「clone or download」,会看到一个弹出层
- 请确保弹出层里的地址是 SSH 地址,也就是 git@github.com 开头的地址,如果不是,就点击 Use SSH 按钮,就点击 Use SSH 按钮,就点击 Use SSH 按钮。然后复制这个地址。
- 打开 Git Bash,找一个安全的目录,比如 ~/Desktop 桌面目录就很安全:
cd ~/Desktop。运行。 - 运行
git clone 你刚才得到的以git@github.com开头的地址,运行完了你就会发现,桌面上多出一个 git-demo-2 目录。我再说一遍,桌面上多出一个 git-demo-2 目录。我再说一遍,桌面上多出一个 git-demo-2 目录。这个细节很重要,很多小白发现不了这个细节,我也不知道他们是眼瞎还是怎么了…… - 好了你进入了这个目录了,如果没有,我就要吐血了,因为我的提示很明显。
- 运行
ls -la你会看到,远程目录的所有文件都在这里出现了,另外你还看到了 .git 本地仓库。这是你就可以添加文件,git add,然后 git commit 了。
三种方式都说完了,它们分别是:
- 在本地创建仓库
- 将本地仓库上传到 GitHub
- 下载 GitHub 上的仓库到本地
其实呢,我还可以说很多种不同的方式,但是,你记住这几种就行了,够你用的了。我们并不想要了解 git 的所有高级用法,我们的目的很明确:能通过 Git 命令使用 GitHub 就行。
我们再回顾一遍已经学到的命令:(这次只多了一个 git clone 命令)
- git clone git@github.com:xxxx,下载仓库
- git init,初始化本地仓库 .git
- git status -sb,显示当前所有文件的状态
- git add 文件路径,用来将变动加到暂存区
- git commit -m "信息",用来正式提交变动,提交至 .git 仓库
- 如果有新的变动,我们只需要依次执行 git add xxx 和 git commit -m 'xxx' 两个命令即可。别看本教程废话那么多,其实就这一句有用!先 add 再 commit,行了,你学会 git 了。
- git log 查看变更历史
如何上传更新
你在本地目录有任何变动,只需按照以下顺序就能上传:
- git add 文件路径
- git commit -m "信息"
- git pull (相信我,你一定会忘记这一个命令)
- git push
下面是例子
cd git-demo-1touch index2.htmlgit add index2.htmlgit commit -m "新建 index2.html"git pullgit push