Git基础使用


git知识合集https://gitee.com/all-about-git

常用的Linux命令(Git Bash中使用)

  1. cd … 切换至上级目录(注意要有空格)

  2. cd Desktop 进入当前目录下的Desktop目录

  3. pwd 显示当前路径

  4. clear 清屏

  5. ls 列出当前目录下的所有文件

  6. touch 新建文件

    touch index.js

  7. rm 删除文件

  8. mkdir 创建目录

  9. rm -r 删除目录

rm -rf /	(切勿在Linux下使用,删除电脑中所有文件)
  1. mv 移动命令

    mv index.html test (mv+被移动的文件+目标路径)

  2. reset 重新初始化终端

  3. history 查看历史命令

  4. #表示注释

  5. exit退出终端

Git的配置信息

  1. git config --system --list(查看系统配置 文件位置 D:\code\Git\etc\gitconfig)
  2. git config -l(查看所有配置,包括用户等等)
  3. git config --global --list(查看用户配置 文件位置 C:\Users\lenovo\gitconfig 配置之后才会有这个文件)

首次下载,配置用户信息

 git config --global user.name "tyrion"
 git config --global user.email "993301869qq.com"

Git的基本理论(核心)

Git本地三个工作区域

  1. 工作目录(working directory):平时存放代码的地方
  2. 暂存区(Satage/Index):临时存放改动,事实上只是一个文件,保存即将提交到文件列表的信息
  3. 资源库(Repository/Git Directory):安全存放数据的地方,里面有所有提交的版本的数据,其中head指向最新放入仓库的版本

Git远程仓库

  • 远程仓库(remote directory):托管代码的服务器,

文件转换如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VGm5sdvw-1605762363309)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20201117105754041.png)]

本地仓库搭建

两种方法:

  1. 创建新仓库
  2. 克隆远程仓库

本地仓库搭建

当前目录新建Git代码库
git init

克隆远程仓库

git clone url
(git clone https://github.com/TheAlgorithms/Java.git)

Git文件操作

4种状态

  1. untracked:未跟踪,即在文件夹中,但没有加入到git库,不参与版本控制

    通过git add状态变为staged

  2. unmodified:文件已入库,未修改,即版本库中的文件快照内容与文件夹内容完全一致,这种类型的文件有两种去处

    如果被修改,变为modified
    如果使用git rm移出版本库,则成为untracked文件

  3. modified:文件已经修改,这种文件有两个去处

    使用git checkout则丢弃修改,返回到modified状态

    使用``

  4. staged:暂存状态,执行git commit则将修改同步到库中,这之后库中的文件和本地的文件又变为一致,文件回到unmodified状态,执行git reset HEAD filename取消暂存,文件文件状态变为unmodified状态

git基本命令

#查看指定文件状态
git status [filename]

#查看所有文件状态
git status

#添加所有文件至暂存区
git add .

#提交暂存区的内容到本地仓库(-m表示信息)
git commit -m ""(引号中写commit信息)

忽略文件

在项目中,很多文件是不需要被纳入到版本控制中的,比如数据库文件,临时文件,设计文件等等

在主目录下建立".gitignore"文件:

  1. 文件中的空行或以#开始的行是是无效的

  2. 可以使用Linux通配符。例如:*代表任意多个字符,?代表一个字符,[abc]代表可选字符范围,{string1,string2}代表可选字符串

  3. !表示例外规则,将不会被忽略

  4. /url 表示忽略的文件 在此目录下,子目录中的文件将不会被忽略

/temp 仅忽略根目录下的temp文件,不包括其他目录的temp文件
  1. url/ 表示忽略的是此目录下的该名称的子目录
build/ 忽略build/目录下的所有文件
doc/*.txt 忽略doc下所有txt文件,但其他仍为正常

使用Git新建远程仓库

  1. 添加ssh

    在/c/Users/lenovo/.ssh路径中使用git bash,输入如下命令(提出一直点回车即可)

ssh-keygen -t rsa
  1. 在github中头像的找到设置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bN9BY79s-1605762363311)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20201117164530932.png)]

在左侧找到ssh选项

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DKYbrfnp-1605762363313)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20201117164603008.png)]

之后选择new SSH Key,将之前.ssh文件中生成的.pub文件中的内容复制到下面的框中提交即可

  1. 在github页面的右上角找到+号,选择新建仓库

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yo6Eh8zi-1605762363314)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20201117164901517.png)]

  1. 创建完成后,在本机的文件夹使用git bash下载项目
git clone url

在idea中使用Git

  1. 在idea中创建项目
  2. 将git clone下载下来的文件夹中的所有文件复制到idea创建的项目中即可

集成git后,idea中的文件颜色会发生变化

  1. 红色:未加入版本控制
  2. 绿色:添加到暂存区的文件
  3. 蓝色:加入到版本控制,已提交,有改动
  4. 白色:加入到版本控制,已提交,无改动
  5. 灰色:版本控制的忽略文件

add操作的3种方法:

  1. 在idea的terminal中可以使用git add .进行add操作

  2. 也可以点击右上角的commit选项

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WKpY6pUW-1605762363315)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20201119113049964.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DHqEjnlW-1605762363316)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20201119113111730.png)]

前方有对勾的文件就是已经被add到暂存区的文件,没有add的也可以手动点击即可

  1. 对于单个文件,可以右击在git选项中找到add的子选项

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3845YgCR-1605762363317)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20201119113422272.png)]

commit:

commit时,一定要写Commit Message,否则会报错

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ykTLXVlB-1605762363318)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20201119113804990.png)]

提交之后在idea下面的git中的Log选项可以看到日志

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-soyiSnzd-1605762363319)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20201119114248167.png)]

此时,在远程仓库中还不能看到修改,我们还需要push

push:

  1. 在terminal中git push即可

  2. 可以使用idea右上角的push选项

Git分支

git branch # 列出本地当前所有分支
git branch -r # 列出远程分支
git branch dev # 新建dev分支,但仍保持当前分支
git checkpoint -b dev # 新建dev分支并切换至dev分支工作
git merge dev # 将dev分支合并至当前分支
git branch -d dev # 删除dev分支

#删除远程分支
git push origin --delete [branch]
git branch -dr [remote/branch]

git branch # 列出本地当前所有分支
git branch -r # 列出远程分支
git branch dev # 新建dev分支,但仍保持当前分支
git checkpoint -b dev # 新建dev分支并切换至dev分支工作
git merge dev # 将dev分支合并至当前分支
git branch -d dev # 删除dev分支

#删除远程分支
git push origin --delete [branch]
git branch -dr [remote/branch]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值