git工具的使用

目录

一.git介绍

为什么要使用git,git能做什么

传统文档管理

源代码管理的好处

git工作流程图

二.git安装步骤(windows版)

三.使用

1.初始化仓库

2. git简单的初始化命令操作

1.在目录下随意新建一个文件

2.查看文件的状态

 配置个人信息

 3.文件状态的转变

将文件添加至暂存区

 将文件添加到仓库区中

 4.查看git日志

  5.版本回退

6.修改版本库中的文件

7. 撤销与修改

8.比较文件的不同

9.删除文件

3.git的远程操作

1.注册账号新建一个仓库

2.把本地项目上传到git服务器

 3.克隆仓库

4.从远程仓库拉取更新到本地

4.分支管理

1.创建分支

2.合并分支

1.提交

3.删除分支

git常用命令


一.git介绍

git是由Linux之父开发的,起初只是为了linux内核开发的方便,linux之父被逼无奈,花了两周时间使用c语言写了个git出来,直至2008年,github网站的上线,为无数开源项目免费提供git存储,git迅速成为了最流行的分布式版本控制系统

为什么要使用git,git能做什么

传统文档管理

大学改论文的时候,论文命名方式从论文.doc->论文_改1.doc->论文_改改改改.doc这种命名方式

 就像这样子一样,当你使用过git之后,你可以非常简洁的管理你的所有版本的论文,在仓库区都有唯一的版本号,非常容易地进行版本控制功能。

源代码管理的好处

多人协同开发

在git中会有客户端与服务器之分,当多人协同开发的时候,就可以使用git服务器,所有人都可以使用本地git与服务端git进行通信,把自己完成的工作上传到git服务器上,从git服务器中下载所需要的内容。

版本控制

git的版本控制功能不仅仅局限于一个文件之中,同样可以对于整个文件夹,对于整个项目进行版本控制,通过分支的操纵灵活的完成大型项目的工作。

git工作流程图

 

二.git安装步骤(windows版)

1.从官网下载

Githttps://git-scm.com/2.双击打开一直点next即可,也可以进行自定义一些参数

3.在开始菜单中找到git bash的那个,打开

4.成功喽 

三.使用

1.初始化仓库

我们可以新建一个文件夹,进去之后右键点击git bash where(在这里打开git)

 输入命令git init

后面有蓝色字体(master代表仓库的主分支,也是一个仓库最明显的特征) 

 初始化仓库之后会建立一个.git的隐藏文件,里面存储着版本控制的一些信息(不要动它,动谁都不要动这个文件

2. git简单的初始化命令操作

1.在目录下随意新建一个文件

$ touch readcoment.txt

2.查看文件的状态

$ git status

 在git中,查看文件状态时,使用不同的颜色区别不同的状态,状态如何改变,请接着看

红色:工作区

绿色:暂存区

白色:仓库区

 配置个人信息

 --global参数改变全局信息,如果不加这个参数,代表配置的是本项目的个人配置信息

配置个人信息是为了之后连接远程数据使用的一个身份,git本身就是为了团队合作写代码提高效率所开发的,所以git会有服务器端,就像是github,gitee一样。这些配置信息都会保存在.git下

 3.文件状态的转变

将文件添加至暂存区

$ add 目录或文件名

 将文件添加到仓库区中

$ git commit -m "这是备注"

 在git三个分区中,你一直工作在工作区中,当工作没有完成需要离开时,可以把手头的工作提交到暂存区,当工作彻底完成之后,再把整个项目提交到仓库区。提交至仓库区的时候,就代表此项任务已经完成,本次提交会对应一个版本号,用于版本控制等

 4.查看git日志

$ git log
$ git reflog

reflog命令输出的内容比较简洁,并且可以查看到已经删除了的记录(推荐使用)

日志可以查看这个仓库在什么时间被谁干了什么事,便于项目出现问题是进行追踪问题。

  5.版本回退

 每次使用git commit命令把暂存区的内容提交至仓库区中就会生成一个对应的版本号,如果那次提交之后整个项目不可以使用了,或者不满意可以使用以上命令进行版本的回退,使用reflog查看版本信息时head对应的就是当前最新版本,最前面的一串字符串表示版本号

 当然你现在只提交了一个版当然不可以无中生有呀,我们创建一个文件再提交一个版本,使用reflog

7284038表示是当前的版本号,想要改变为上一个版本可以使用以下命令,

 此时在你文件夹下没有1.txt文件就会消失(谨慎操作)

6.修改版本库中的文件

如果你对文件readcoment.txt文件进行了修改,再去使用状态查看命令时

 如果对已经提交的代码进行了修改的话,这些修改的文件会自动变为工作区状态,并且它会提示你怎么做可以把修改后的文件提交到仓库区

7. 撤销与修改

工作在工作区与暂存区之间(也就是说你这个任务没有完成的时候,没有提交到仓库区形成版本号的时候)

撤销暂存区的代码

 将暂存区代码撤销到工作区

 撤销工作区代码

也就是说通过reset HEAD,你可以把暂存区的内容保存至工作区,通过checkout可以清除工作区的内容,与版本库保持一致

8.比较文件的不同

对比仓库与工作区

$ git diff HEAD -- 文件名

 

对比仓库上个版本与工作区

$ git diff HEAD HEAD^ -- 文件名
当工作区文件与仓库文件一致时,不返回任何内容,如果不一致则返回文件哪里不一致

9.删除文件

删除工作区中的文件

直接删除即可

删除暂存区的文件

# 先将暂存区代码撤回工作区
git reset HEAD 文件名
# 然后直接删除即可
rm 文件名

删除已提交到版本库的

# 直接删除文件
rm -rf 文件名
# 提交当前代码
git add .
#  提交当前代码到版本库
git commit -m "备注"

3.git的远程操作

要实现多人合作完成 一个项目,或者你从一个地方迁移到另一个地方去工作,代码迁移都可以通过git服务器去完成,国内推荐使用gitee,相比github访问要快不少。

1.注册账号新建一个仓库

进入gitee官网进行注册登录,登陆完成后点击右上角加号新建仓库,只需要填写一下仓库名称就好了,点击创建

 

 创建完成

2.把本地项目上传到git服务器

# 关联远程git仓库地址
$ git remote add origin 复制的地址

# 把本地文件推送到远程
$ git push -u origin "分支名称"

刷新gitee仓库界面,可以看到刚刚的本地文件已经上传成功

 3.克隆仓库

$ git clone https://gitee.com/caiahao6/caiahao_day01.git

这个方法仅限于把远程的整个项目copy到本地,需要仓库地址

4.从远程仓库拉取更新到本地

$ git pull origin master

使用场景,当你的同事做完他的工作后,你可以使用拉去更新,把同事的代码拉取到本地

4.分支管理

正常的开发项目中都是多人协作,每个人的任务一般不会一天就完成,如果把没有完成的代码提交到远程仓库会影响被人工作。git提供了分支的功能就不用担心了,可以创建一个自己的分支,在上面干活,想提交就提交,等到工作完成再一次性合并到原来的分支。

1.创建分支

新建git仓库时会默认创建一个分支`master`,它叫主分支。一般情况我们不会直接在主分支上干活,它主要用来发布版本。

创建一个开发分支`develop`

git branch develop

再切换到`develop`分支

git checkout develop
Switched to branch 'develop'

这两天命令也可以通过一条命令来实现

git checkout -b develop


 

`-b`参数表示创建并切换。

使用`git branch`命令查看当前分支

git branch
* develop
  master

2.合并分支

创建好`develop`分支后,你开始干活,完成上级领导交给你的任务,根据用户的手机壳颜色更换app主题,5分钟之后开发完毕

1.提交

$ git add change_theme.py

经过测试功能完成,现在我们要合并到`master`分支

首先切换到`master`

$ git checkout master
Switched to branch 'master'


 

查看工作区,你会发现刚才开发的功能文件没有了,不要惊慌,因为那个提交是在`develop`分支上,现在我们把`develop`分支的工作合并到`master`分支上:

$ git merge develop



 

`git merge`命令用于合并指定分支到当前分支。合并后,在查看文件夹发现,`change_theme.py`文件又回来了。

将分支上传到码云上:直接在分支中使用  git push -u origin develop

3.删除分支

合并完之后你也可以删除掉`develop`分支:

$ git branch -d develop


git push origin --delete develop


 

git常用命令

  • git init 初始化一个仓库 ,会将该目录下所有文件交给git管理

  • git status 查看当前版本管理状态

  • git add 文件1 文件2… 把有变化的文件(新增的、修改的、删除的) 添加到git暂存区里

    git add . 将所有改变的文件统一 加入到暂存区里

  • git rm --cached 文件1 文件2 把暂存区中的文件从暂存区移除

  • git commit -m ‘提交描述’

  • git restore 文件1 文件 2 … 放弃文件的改变

  • git log 查看提交历史

  • git reflog 查看命令历史

  • git reset --hard commitid 恢复到指定版本

  • git remote add origin https://gitee.com/nieps/javademo.git   将本地仓库与远程仓库建立联系
    
  • git push -u origin master 将本地代码推送到远程 首次推送

  • git push -f origin master 强制推送本地代码到远程

  • git remote 查看远程分支的名称

  • git remote -v 查看远程分支的名称及远程仓库的地址

  • git remote rm 远程分支名称 删除要本地仓库与远程仓库的关联关系

  • git pull niu master 拉取远程服务器代码

  • git clone 远程分支地址 将远程代码克隆到本地

  • git 命令 --help 查看命令帮助

  • git branch 查看当前的分支

  • git checkout -b 分支的名称 创建并切换到分支上

  • git switch -c 分支名称 创建并切换到分支上

  • git branch -d 分支名称 删除分支

    git branch 分支的名称 创建分支

    git checkout 分支的名称 切换分支

    • git merge 分支名称 将分支中的内容合并到当前分支

    • git switch 分支名称 切换到分支上

    • git tag 标签名 创建一个标签 默认该标签指向最新的commitid

    • git tag 查看所有标签

    • git tag 标签名 commitid 给指定的commit打标签

    • git tag -d 标签名 删除标签

    • git push 远程分支名称 标签名 将指定标签推送到远程

    • git push 远程分支名称 --tags 将所有标签推送到远程

      删除远程标签:

      1. 先删除本地 git tag -d 标签名
      2. 删除远程 git push 远程分支名称 :/refs/tags/标签名
    • git push origin(远程分支名称) 本地分支:远程分支 将本地的分支推送到远程分支

      git branch -d 删除本地分支

      git push origin(远程分支名称) --delete 远程仓库分支名称

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

豪豪喜欢吃猪肉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值