【git-Linux学习笔记】

Git

git基本操作


  • 工作区、暂存区、版本库概念

image-20220921134635635

​ 操作:

git add (文件名): 将文件存进暂存区

git reset : 将暂存区文件取消暂存或是切换到指定版本

git reset --hard 2843hjukhifhskpwi34o3j5i5

git commit (文件名): 将暂存区的文件提交进版本库

git commit - m “msg” filename

git init : 在本地的任意目录下进行本地仓库初始化

git log :查看日志

git status : 获取文件状态

  • git工作区文件状态

image-20220921135137576


git远程仓库操作命令

git remote :查看远程仓库(查看的是只有简写的远程仓库,目的是确认到底现在是哪一个仓库)

git remote -v :查看远程仓库地址

git remote add 添加一个新的远程仓库git,同时指定一个简写

image-20220921141141256

git clone [url] :从远程仓库克隆

git pull [remote-name] [branch-name] :从远程仓库拉取

image-20220921142547623

git push [remote-name] [branch-name] :推送到远程仓库


分支操作

git branch :查看所有本地分支

git branch -r :查看所有远程分支

git branch -a :查看所有本地和远程分支

image-20220921144140185

git branch [name]:创建分支

image-20220921144250056

git checkout [name]:切换分支

git push [shortname] [name]:推送至远程仓库分支

git merge [name]:合并分支

image-20220921144656001

两种方法进行信息输入,一种是Linux的vim,:wq退出i 输入,或者直接在merge后面加上-m “msg”


合并冲突问题

​ 在不同分支中有同一个文件,并且该文件在两个分支中都修改过,此时合并两个分支就会出现冲突。

image-20220921145326317

处理方式:手动处理该文件,然后重新add

image-20220921145537276

出现无法add一部分的问题,此时加上 -i


标签操作

指某个分支某个特定时间点的状态。人们会使用这个功能来标记发布结点(v1.0、v1.2)

git tag:列出已有标签

git tag [name]:创建标签

git push [shortName] [name]:将标签推送至远程仓库(远程仓库别名)(标签名)

git checkout -b[branch] [name]:检出标签

需要新建一个分支来指向某个标签


Linux

常用命令

序号命令对应英文作用
1lslist查看当前目录下内容
2pwdprint work directory查看当前所在目录
3cd 目录名change directory切换目录
4mkdir 目录名make directory创建目录
5touch 文件名touch如果文件不存在,新建文件
6rm 文件名remove删除指定文件
7-l换行
8-f强制删除

命令格式

command [-options] [parameter]

command:命令名

-options:选项,可以省略

parameter:传给命令的参数,一个或者多个


文件目录操作命令 ls

  • -a 显示所有文件及目录(包括隐藏目录以.开头)

  • -l 除了文件名以外,同时将详细信息也罗列出来(d表示目录,-表示文件)

简写:

ls -a -l
ls -al
ls -al dir
ll 简写

cd

  • ~表示用户home目录
  • . 表示目前所在的目录
  • … 表示目前目录位置的上级目录
cd .. 
cd ~
cd /usr/local 

cat

用于显示文件内容

cat [-n] fileName

  • -n 由1开始对所有输出的行数编号
cat /etc/profile                  查看/etc目录下的profile文件内容

more

以分页形式显示文件内容

more fileName

  • 回车键 向下滚动一行
  • 空格键 向下滚动一屏
  • b 返回上一屏
  • q或者ctrl + C 退出more
more /etc/profile

tail

查看文件末尾内容

tail [-f] fileName

  • -f :动态读取文件末尾内容并显示、通常用于日志文件的内容输出
tail -20 /etc/profile       显示/etc目录下的profile文件末尾20行的内容
tail -f /itcast/my.log 动态读取/itcast目录下my.log文件末尾内容并显示

mkdir

创建目录

mkdir [-p] dirName

  • -p: 确保目录名称存在,不存在就创建。可以实现多层目录同时创建
mkdir itcast 
mkdir -p itcast/test  

rmdir

删除空目录

rmdir [-p] dirName

  • -p 当子目录被删除后使父目录为空的话,一起删除
rmdir itcast* 删除名称以itcast开始的空目录
rmdir -p itcast/test 删除itast目录中为test的子目录

rm

删除文件或者目录

rm [-rf] name

  • -f 无需确认,直接删除
  • -r 将目录中所有文件逐一删除,即递归删除
rm -r itcast/ 删除名为itcast的目录和目录中所有文件、删除前需要确认
rm -rf itcast/ 无需确认,直接删除名为itcast的目录和目录中所有文件
rm -f hello.txt 无需确认,直接删除hello.txt

cp

复制文件或者目录

cp [-r] source dest

  • -r 如果复制的是目录需要使用此选项,此时将复制该目录下的所有子目录和文件
cp hello.txt itcast/  将hello复制到
cp hello.txt ./hi.txt   复制到当前目录,并改名为hi.txt
cp -r itcast/ ./itheima/  将**目录和目录下所有文件**复制到itheima目录下
cp -r itcast/* ./itheima/ 将itcast目录下所有文件复制到itheima目录下
. 代表当前目录

mv

为文件或目录改名,或将文件或目录移动到其他位置

mv source dest

mv hello.txt hi.txt           将文件改名
mv hi.txt itheima/            将文件移动
mv hi.txt itheima/hello.txt      将文件移动并改名
mv itcast/ itheima/              存在的话将目录改名
mv itcast/ itheima/              不存在创建目录,移动

tar

对文件进行打包、解包、压缩、解压

tar [-zcxvf] fileName [files]

包文件后缀为 .tar 表示只是完成打包,没有压缩

包文件后缀为.tar.gz 表示打包的同时还进行了压缩

  • -z:代表gzip,对文件进行压缩
  • -c :c代表create 创建新的包文件(打包)
  • -x: extract ,从包文件还原文件(解包)
  • -v :verbose 显示命令执行过程
  • -f:file,用于指定包文件的名称

常用组合

tar -cvf test.tar   test        (打包) 
tar -zcvf test.tar.gz test          (打包同时压缩)
tar -xvf  test.tar                  (解包)
tar -zxvf  test.tar.gz  -C/usr/local             (解压并解包)到指定目录

文本编辑命令vi/vim

yum install vim 安装vim

vim fileName

三种模式

  • 命令模式(Command mode)

  • 插入模式(Insert mode)

    [i,a,o]

    esc 回到命令模式

  • 底行模式(Last line mode)

​ [: / ]

​ 通过/进入底行模式后,对文件内容进行查找

​ 通过:进入底行模式后,输入wq(保存退出),q!(不保存退出),set nu(显示行号)

find

在指定目录下查找文件

find dirName -option fileName

find . -name "*.java"			在当前目录以及子目录下查找.java结尾的文件
find /itcast -name "*.java"		在/itcast目录及其子目录下查找.java结尾的文件

grep

从指定文件中查找指定的文本内容

grep word fileName

grep Hello helloWorld.java		查找helloworld.java中出现的
grep hello *.java				查找所有目录中.java结尾的文件中包含hello字符串的位置
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值