目录
- 命令行、git与github的基本概念
- 命令行的常用命令
- git的基本命令
- 什么是命令行
- 什么是git
- 什么是github
命令行的常用命令
- pwd (process work directory )
![](https://img.haomeiwen.com/i1993435/d3f2dc69ab352158.png)
- ls (list)
- ls:打开目录
- ls -a:打开所用目录
- ls -l :打开详细目录及其信息
- ls --help(-h):查看ls命令的帮助文档
[Tip]
ls -a显示所有类型文件,包括.XXX文件
--help对于所有的命令均适用
![](https://img.haomeiwen.com/i1993435/c7c57f70f99b43ad.png)
![](https://img.haomeiwen.com/i1993435/1fece2d742382ba4.png)
![](https://img.haomeiwen.com/i1993435/23c197f22d79ad1d.png)
- cd (change directory)
- cd 文件名
- cd ..
-
cd ../文件名
- mkdir and touch
- mkdir 文件夹名
- mkdir -p 文件夹1/文件夹2/文件夹3
![](https://img.haomeiwen.com/i1993435/3484879b81fba26e.png)
![](https://img.haomeiwen.com/i1993435/47a1fa221854fbcd.png)
- rm
- rm -r 目录名:强制删除带有文件的文件夹
![](https://img.haomeiwen.com/i1993435/b8139a677642fd87.png)
![](https://img.haomeiwen.com/i1993435/200252902a5daaf8.png)
- mv:重命名目录
![](https://img.haomeiwen.com/i1993435/4259a60bc8aa69db.png)
- 组合操作
- 操作命令1;操作命令2
- 操作命令1 && 操作命令2
[TIP]
分号的作用相当于逻辑运算符||;
&&的作用相当于逻辑运算符&&;
![](https://img.haomeiwen.com/i1993435/4c67e62370ff9f0e.png)
- cp(copy)
- cp 文件名1 文件名2
- cp -r 文件夹1 文件夹2
![](https://img.haomeiwen.com/i1993435/f7a90ebbf6ff0eac.png)
![](https://img.haomeiwen.com/i1993435/db71cd3cf2924e0f.png)
- echo (轻量级的文本编辑命令)
echo 文本内容 > 文件
![](https://img.haomeiwen.com/i1993435/1300869b19034cfa.png)
- cat
- cat 文件名:输出文本
- cat 文件名 | less :有序输出文本
[Tip]
"|"表示管道符号,将前面命令的内容传递到后面的命令;
"less"表示有序输出命令;
"head -n 3 文件名 "表示输出头三行文本;
"tail -n 3 文件名"表示输出尾三行文本;
![](https://img.haomeiwen.com/i1993435/2ecd41cfa4489103.png)
![](https://img.haomeiwen.com/i1993435/0e53069013cccdb3.png)
![](https://img.haomeiwen.com/i1993435/423115ad92122ad2.png)
[TIP]
alt + .:把上一次的参数给写下来
!!:重复上一次命令
- which
which :告诉命令所在的文件路径
![](https://img.haomeiwen.com/i1993435/a7dd937735c19eaa.png)
- Vim
- vim是升级版的vi,是一款文本编辑器
- vim 文件名
- 按i进入编辑模式
- 按:进入命令模式,写入wq(写入并退出编辑)
- esc退出到不可编辑模式
![](https://img.haomeiwen.com/i1993435/7898189feb1d45e3.png)
![](https://img.haomeiwen.com/i1993435/93b113c5ea618d3a.png)
git的基本命令
- git status 命令
- git status :查看当前git库的操作情况的命令
- git status -s:简洁查看
-git status -b:查看文件的分支
![](https://img.haomeiwen.com/i1993435/71bc18ed41b97f05.png)
- git init:初始化本地库.git
- git add 文件夹:将特定文件夹加入缓存区
- git add .:将所有文件加入缓存区
- git add 具体文件名
- git commit 文件夹:将特定文件夹加入本地库
- git commit 文件名 -m "描述"
- git commit -v进入编辑器
![](https://img.haomeiwen.com/i1993435/6a4b26d43282f633.png)
- git push 命令
- git push :将本地库的变动推送的远程库的命令
- git push 远程库名 本地分支名:远程分支名
github的远程库与本地库的操作
- 公私钥配对
![](https://img.haomeiwen.com/i1993435/8cd7ef9ac307783f.png)
![](https://img.haomeiwen.com/i1993435/003fb7bf58890359.png)
![](https://img.haomeiwen.com/i1993435/8f595400c0553acf.png)
- 将本地库和远程库相联系
![](https://img.haomeiwen.com/i1993435/27bf87131c2261aa.png)
[TIP]
这一步很重要,因为不先添加本地与远程库之间的联系而直接上传本地库的话,会产生如下问题:
![](https://img.haomeiwen.com/i1993435/df41745e9ee1fbc8.png)
-
上传至远程库
- 更改远程库的地址
git remote add origin ssh
[TIP]
git remote -v:查看远程库的地址
![](https://img.haomeiwen.com/i1993435/b8d792ecfe02763b.png)
- 删除远程库
![](https://img.haomeiwen.com/i1993435/dd2fdba29f6d665e.png)
![](https://img.haomeiwen.com/i1993435/01b24b7310146b42.png)
![](https://img.haomeiwen.com/i1993435/ec21f2194c180fab.png)
- git log 查看历史记录
![](https://img.haomeiwen.com/i1993435/dea09aa75930ae2a.png)
[TIP]
关于文件前的英文标记及颜色的解释
绿色的A表示已经add,而红色的M表示后台知道已经修改了但没有管它
- git pull 命令
git pull 是更新本地库的内容的命令
![](https://img.haomeiwen.com/i1993435/98f18f240cfb2eb0.png)
-
git fetch命令
只把远程仓库的代码拉到本地仓库.git,并不放到你的工作目录里如test文件夹。
这一命令实现了,当你需要借鉴远程库的优秀代码时,又不希望它对你现在工作的代码产生冲突的良好解决方案 -
git合作时产生冲突的解决方案
- 通常发生在git pull时,因为有可能远程合作者的更新与你本地库的更新相冲突,此时可以通过看uu 文件名识别冲突
- 进入编辑器,vi 文件名
- 搜索四个等于号,/====
- 往上找<<<<
- 往下找>>>>
- 等号上面是本地冲突内容,等号下面是远程冲突内容
- 最后和合作者商议如何修改,并将冲突内容复制到vi的新区域
-
新建远程分支
- git branch查看分支
- git branch -a查看所有分支
- git branch 分支名
- git checkout fen1
-
分支的操作和内容相互独立
![](https://img.haomeiwen.com/i1993435/c23aa7040f14ad7b.png)
- 将不同分支的文件合并至一个分支
git merge 分支名
![](https://img.haomeiwen.com/i1993435/d214d91c8b5bc076.png)
-
删除本地分支和远程分支
- git branch -d 分支名
-
git branch -D 分支名(强制删除)
-
git push origin :fen1将空的分支名分配给fen1
![](https://img.haomeiwen.com/i1993435/220c8a7832e173eb.png)
- git reset命令
- 反悔命令只作用于本地库的文件,只起到“隐藏”操作作用,不会实质改变文件
- 若加上git reset --hare commit码,那么会将本地文件也恢复到指定地点
![](https://img.haomeiwen.com/i1993435/26b5526189f6ddc2.png)
![Uploading Paste_Image_244952.png . . .]
网友评论