Shell命令
常见命令格式:命令 [-options] [参数]
pwd (Print Working Directory)
查看当前目录cd (Change Directory) cd /etc
切换目录ls(List)
查看当前目录下的内容 如ls -al
-
mkdir (Make Directory)
创建目录 如mkdir blog
创建一个blog的目录
touch
创建一个文件 如touch index.html
cd blog 进入刚刚创建的blog目录,在这个目录里面
touch index.html
创建一个index.html文件,
wc (Word Count) 数字信息统计
如wc index.html
cat
查看文件全部内容, cat index.htmlcd ..
返回上一级目录-
more/less
查看文件 如more index.html
rm
删除文件 如 rm index.html ,rm -rf blogrmdir
删除文件夹tab
自动补全tar
解压 文件
VI编译器命令
-
ZZ
保存退出 -
u
撤销操作,可多次使用 -
dd
删除当前行 -
yy
复制当前行 -
p
粘贴内容 -
i
进入编辑模式,当前光标出插入
-
a
进入编辑模式,当前光标后出入 -
:w
保存 -
:q
退出 -
:wq
保存并退出 -
:e!
撤销更改,返回上一次保存的状态 -
:q!
不保存强制退出 -
:set nu
设置行号
git命令
1.git 命令
新建一个文件夹,
cd
进入 然后初始化 git 本地仓库
-
git init
初始化仓库
-
2.
git status
查看当前状态提交的状态
3.
git add -A
(提交所有的) 提交本地文件到缓存区-a
可以是单独一个文件名称,代表添加摸个文件到缓存区git add .
提交当前文件夹里面的所有文件4.
git commit -m "提交信息"
将缓存区的东西提交到本地仓库-
git checkout xxx.txt
放弃提交的文件-
配置用户名和邮箱
git config --global user.email "xxxxxxxx@qq.com" git config --global user.name "xxxxxx"
-
-
5.
git reset --hard sha
值 回退到某一个版本sha
哈希值git reset --hard sha
值 回退到某一个版本
git reset --mixed
(默认可以不写) sha 状回退到修改态
git reset --soft sha
回退到暂存区状态 6.
git push
将本地仓库的内容提交到远程服务器7.
git pull
从远程服务器更新8
.git log
查看所有的提交日志9.
git clone
仓库地址10.
git reflog
查看所有的SHA值
2.分支
1.
git branch fixBranch(分支名称)
开启分支2.
git branch
查看当前分支 有*的代表当前正在工作的分支3.
git checkout fixBranch
切换到fixBranch的分支上4.
git merge fixBranch
分支合并 将 fixBranch上的内容合并到master上5.
git branch -d fixBranch
删除分支
3.1 远程操作
1.
git branch test
创建本地分支2.
git push origin test
将本地分支推送到远程分支3.
git branch -r -d branch-name
删除本地分支4.
git push origin --delete test
删除远程分支
3.git共享仓库
git clone 仓库地址
2.
git clone --bare 地址
创建共享仓库3.
git push 仓库地址
提交代码到 共享仓库共享仓库看不到工作区
但是里面有内容 他是共享的,别人只能往里面放代码,但是不让修改 如果想要获取就直接克隆
比如code
文件夹下有2个用户user1
和user2
,用户user1
下有项目目录,那么user2
想要获取就必须lone
,克隆的地址必须是有.git
文件的项目目录本地共享
1.在
user1
中初始化一个仓库
,然后穿件文件index
2.克隆文件
user1
文件 (注意:user1
隐藏的有.git
文件)
在克隆的时候,必须有.git
文件的目录
修改index
文件的内容,
3.
user1
获取user2
更改index
文件的代码内容
4.代码冲突
文件冲突: 多个人同时改了同一个文件的同一行就会引起冲突
5.查看远程仓库地址
git remote -v
查看远程仓库地址 默认 origingit remote add
仓库名称 仓库地址-
修改远程仓库地址
-
1.直接修改
git remote origin set-url [url]
2.先删除后增加
git remote rm origin
git remote add origin [url]
- 3.直接修改
config
文件
-
6.生成公钥和私钥
生成 公钥/私钥 ssh-keygen -t rsa
7.git tag
标签
- 标签可以针对某一时间点的版本做标记,常用于版本发布
git tag v0.1.2
- 创建附注标签
-
git tag -a v0.1.2 -m
“0.1.2版本” - 切换到标签
- 与切换分支命令相同,用
git checkout [tagname]
- 用git show命令可以查看标签的版本信息:
- git show v0.1.2
- 给指定的commit打标签
- git tag -a v0.1.1 9 fbc3d0
- 标签发布
- 通常的git push不会将标签对象提交到git服务器,我们需要进行显式的操作:
- git push origin v0.1.2 # 将v0.1.2标签提交到git服务器
- git push origin –-tags # 将本地所有标签一次性提交到git服务器
- git tag -d v0.1.2 # 删除本地标签
- git push origin :refs/tags/v0.1.2 删除远程tag
- git tag 查看本地的tag
9.gitignore 忽略文件
- 创建 .gitignore文件, 图形化界面不能创建
- node_modules/ node_modules下的所有文件都不提交
- node_modules/*.jpg node_modules/123.jpg图片不提交但是node_modules/coderYJ/456.jpg可以提交
- .idea/* .idea 下的所有文件都不提交
- *.png 忽略所有的 .png 结尾的文件
- !xxoo.png 但排除 xxoo.png
想把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交
- git rm -r --cached .
- git add .
- git commit -m 'update .gitignore'
10.git差异化
- 比较暂存区和当前的版本的差异 此命令比较的是工作目录(Working tree)和暂存区域快照(index)之间的差异
也就是修改之后还没有暂存起来的变化内容。 - git diff
- git difftool 分屏比较
- git diff sha1 sha2 比对2个不同的版本
- git difftool sha1 sha2 分屏对比
11.文件回退到暂存区
- git checkout -- 文件名称
12.保存工作区
- git stash 保存内容(入栈) 切换分支的时候不会让另一个分支看到
- git stash pop 回到最初保存的内容
13.md5加密 不可逆
- echo -n 123456 | openssl md5
- -n就表示不输入回车符
- 结果 e10adc3949ba59abbe56e057f20f883e
14.base64加密/解密
-
加密
- echo abc | openssl base64
- YWJjCg== (编码结果)
-
解密
- echo YWJjCg== | openssl base64 -d
- abc (解码结果)
-
wc 统计字节数
wc -l filename 报告行数
wc -c filename 报告字节数
wc -m filename 报告字符数
wc -w filename 报告单词数
ssh公钥和秘钥