git的常见使用命令

git的使用

目录

git的使用

1.git是什么?

2.git的安装

3.git账号注册

4.git的三个区

5.git基本命令

6. git 重置

7. git忽视文件

8. git分支操作

9. git分支命令

10. 远程仓库

11. SSH免密码登录


1.git是什么?

git是一款免费、开源的分布式版本控制系统,可以高效的管理项目。通过git可以进行代码的管理。

2.git的安装

去官网下载对应系统版本的安装包,点击安装,一直下一步即可(注意:最好默认安装路径,不要修改,不要安装在中文目录下),安装完成后,任意位置点击右键可以看见Git GUI Here 和 Git Bush Here就表示安装成功。

3.git账号注册

按照要求进行注册即可

1.github(GitHub: Where the world builds software · GitHub)

2.gitee(Gitee - 基于 Git 的代码托管和研发协作平台)

4.git的三个区

4.1 工作区:写代码的地方,工作的目录就叫工作区

4.2 暂存区: 在git中,代码无法直接从工作区提交到仓库区,需要先添加到暂存区,再提交到仓库区。目的是为了避免误操作

4.3 仓库区:将临时保存在暂存区的代码提交到仓库区永久存档保存,提交到仓库区,每次都会有提交记录,有需要可以通过版本号回退到任意一次版本。

5.git基本命令

5.1 git init

项目想要被git管理,就需要初始化一个git仓库,初始化完成,会生成一个.git隐藏文件夹,可以通过查看显示隐藏文件

# 初始化仓库, 在当前目录下生成一个隐藏文件夹.git
git init

5.2 git add

将工作区的文件添加到暂存区

命令:git add 文件名/目录名

# 将index.html添加到暂存区
git add index.html
​
# 将css目录下所有的文件添加到暂存区
git add css
​
# 添加当前目录下所有的文件
git add --all
git add .
git add -A

5.3 git commit

将暂存区的文件提交到仓库区,生成版本号进行存档

# 将文件从暂存区提交到仓库
git commit -m "提交说明"
​
# 如果不写提交说明,会进入vi编辑器,没有写提交说明,是提交不成功的。 :q! 或者:exit  可以退出vi编辑器
git commit   # 需要使用vi输入内容  vi编辑器常用操作 

5.4 git config配置

如果是第一次提交需要配置提交人的信息(用户名和邮箱)

# git config  user.name 你的目标用户名
# git config  user.email 你的目标邮箱名
​
# 使用--global参数,配置全局的用户名和邮箱,只需要配置一次即可。推荐配置github的用户名和密码
git config  --global user.name hucongcong
git config  --global user.email flycc258@163.com
​
​
git config --global --list  查看配置

5.5 git status

查看文件的状态

红色表示文件在工作区,需要添加到暂存区

绿色表示文件字啊暂存区,需要提交到仓库区

5.6 查看提交日志

// 查看详细提交日志
git log
​
// 日志以一行形式显示
git log --oneline
​
// 查看所有日志(所有提交记录)
git reflog

6. git 重置

想要回退到之前提交的某个版本,可以进行版本回退

git reset --hard 版本号(复制版本号的前六七位即可)

想要进行版本回退要先查询版本号,配合git log查询之前的版本提交信息, git reflog 可以查看所有提交的版本信息。

7. git忽视文件

有些文件不想被git管理,git可以通过配置从而达到忽视掉一些文件,这样这些文件就可以不用提交了。

  • 在仓库的根目录创建一个.gitignore的文件,文件名是固定的。

  • 将不需要被git管理的文件路径添加到.gitignore

# 忽视idea.txt文件
idea.txt
​
# 忽视css下的index.js文件
css/index.js
​
# 忽视css下的所有的js文件
css/*.js
​
# 忽视css文件夹
css

8. git分支操作

分支的作用:可以多人协同开发,互不影响;可以在分支上保存未完成的代码,完成后再合并到主分支上。

9. git分支命令

9.1 创建分支

git在提交后,有一个默认的主分支master,分支就是独立于主分支,可以在分支代码功能完成后再合并到主分支上。

// 创建一个分支,进行某个功能模块的开发
git branch 分支名

9.2 查看分支

git branch

通过查看可以看见所有的分支,当前分支前会有星号

9.3 切换分支

git checkout 分支名称

在当前分支进行操作,不会影响其他分支,一般在分支上进完成能模块,完成后切换到主分支,把分支代码合并到主分支上

9.4 创建分支并切换分支

git checkout -b 分支名称

该命令会创建一个分支并自动切换到该分支

9.5 删除分支

git branch -b 分支名称

分支功能完成并合并到主分支后,可以进行删除,但是不能再当前分支删除当前分支,一般切换到master主分支上再删除分支。

9.6 合并分支

git merge 分支名称

可以将其他分支合并到当前分支,一般在master主分支上合并其他分支

9.7 合并冲突

多个分支都使用修改了同一文件,在合并时就会出现冲突,git在合并时会进行提示,我们一般会保存冲突的代码,进行位置调整,再次进行添加提交。

10. 远程仓库

公司会有一台服务器作为远程仓库

注意:git 和 GitHub以及gitee没有任何关系,git是项目代码版本控制工具,而GitHub和gitee 都是代码托管平台,相当于git的远程仓库

10.1 git clone

一般第一次工作前会将远程仓库中的项目代码克隆到本地,再进行具体功能的开发

git clone 远程仓库地址 

10.2 git push

git commit提交是本地仓库,如果本地电脑出现什么问题,项目代码都丢失,通过git push提交到远程仓库的代码可以永久保存,并且任何人都可以通过远程仓库下载代码

//在代码提交到远程仓库,注意master分支必须写,不能省略
git push 远程仓库地址 master

第一次提交的时候,需要提交GitHub或者gitee的账号和密码,后续window保存了凭证就不需要填写。

10.3 git pull

将远程仓库的代码拉取到本地,远程仓库代码更新,提交前就需要先拉取个最新的代码再进行提交,通常在push前,需要先pull一次。

# 获取远程仓库的更新,并且与本地的分支进行合并
git pull

10.4 git remote

每次提交代码到远程仓库,都要填写仓库的地址,不方便,可以给仓库设置一个别名,简化操作,远程仓库有一个默认的origin的别名

git remote -v  查看当前仓库的所有的别名
​
# 给远程仓库设置一个别名
git remote add 仓库别名 仓库地址
​
# 删除hucongcong这个别名
git remote remove 仓库别名

11. SSH免密码登录

git支持多种数据传输协议,https协议需要输入用户名和密码,ssh协议可以通过配置公钥和私钥进行免密码登录。

每次push或者pull代码,如果使用https协议,那么都需要输入用户名和密码进行身份的确认,非常麻烦(现在window有凭证管理功能,第一次输入后就会保存,之后无需输入)。

使用ssh协议,配置ssh免密码,可以做到免密码往github推送代码。

SSH免密码登录配置

注意:这些命令需要在bash中敲

  • 1 创建SSH Key:ssh-keygen -t rsa 敲3次回车

  • 2 在文件路径 C:\Users\当前用户名\ 找到 .ssh 文件夹

  • 3 文件夹中有两个文件:

    • 私钥:id_rsa

    • 公钥:id_rsa.pub

  • 4 在 github -> settings -> SSH and GPG keys页面中,新创建SSH key

  • 5 粘贴 公钥 id_rsa.pub 内容到对应文本框中

  • 5 在github中新建仓库或者使用现在仓库,拿到git@github.com:用户名/仓库名.git

  • 6 此后,再次SSH方式与github“通信”,不用输入密码确认身份了

  • 26
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值