Git知识

  • 目录

1.Git操作入门

1.1Git基本工作流程本地仓库

1.2Git命令行操作

1.3Git图形化工具操作以上步骤

2.Git版本管理

2.1历史版本切换

2.2分支管理介绍

2.3分支管理操作

3.远程仓库

3.1远程仓库工作流程

3.2远程仓库平台介绍

3.4先有本地项目,远程为空

3.5先有远程仓库,本地为空

3.6代码冲突

4.IDEA集成Git

4.1IDEA中配置Git

4.2创建本地仓库

4.3版本切换

4.4分支管理

4.5本地仓库推送到远程仓库

4.6远程仓库克隆到本地仓库


1.Git操作入门

1.1Git基本工作流程     本地仓库

1.2Git命令行操作

  • git常用命令

    命令作用
    git init初始化,创建 git 仓库
    git status查看 git 状态 (文件是否进行了添加、提交操作)(添加到暂存区,提交到历史仓库)
    git add 文件名添加,将指定文件添加到暂存区
    git commit -m '提交信息'提交,将暂存区文件提交到历史仓库
    git log查看日志( git 提交的历史日志)
  • 操作步骤

    1.创建工作目录、初始化本地git仓库
    2.新建一个test.txt文件(暂不执行添加操作)

  • 3.使用status命令,查看状态
    4.使用add命令添加,并查看状态
    5.使用commit命令,提交到本地历史仓库

  • 6.使用log命令,查看日志
    7..修改test.txt文件
    8.添加并提交,查看日志

    1. 创建工作目录、初始化本地 git 仓库先创建一个文件夹,使用 git init把他从一个普通的文件夹修改成git仓库。有【.git】则代表创建成功

    2. 新建一个 test.txt 文件(暂不执行添加操作)

    3. 使用 status 命令,查看状态

       

      红色为 没有进行添加操作的文件。 

    4. 使用 add 命令添加,并查看状态

    5. 使用 commit 命令,提交到本地历史仓库

       commit操作会把暂存区所有的文件提交到本地仓库,所以不需要指定具体某单个文件

    6. 使用 log 命令,查看日志

          代表当前这个文件在本地仓库中的唯一索引标识,将来对文件进行修改,修改后就是第二个版本了,第二个版本也有一个唯一的标识

    7. 修改 test.txt 文件

    8. 添加并提交,查看日志

1.3Git图形化工具操作以上步骤

图形化工具

  1. 创建工作目录、初始化本地 git 仓库

     

  2. 新建一个 test.txt 文件(暂不执行添加操作)

  3. 选中文件右键,选择TortoiseGit,之后选择添加

  4. 空白处右键,Git提交,提交到本地历史仓库

  5. 空白处右键,TortoiseGit,显示日志,可以产看日志信息

  6. 修改 test.txt 文件

  • 7.添加并提交,查看日志

  • 等进行第二次i修改时,直接点提交到master就可,不用再次添加


2.Git版本管理

2.1历史版本切换

  • 准备动作

    1. 查看 my_project 的 log 日志 git reflog :可以查看所有分支的所有操作记录(包括已经被删除的 commit 记录的操作),显示每个历史版本的一段索引值,进行操作时使用

    2. 增加一次新的修改记录

  • 需求: 将代码切换到第二次修改的版本

    指令:git reset --hard 版本唯一索引值

2.2分支管理介绍

  • 分支

    • 由每次提交的代码,串成的一条时间线

    • 使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线

  • 分支的使用场景

    1. 周期较长的模块开发 假设你准备开发一个新功能,但是需要一个月才能完成 第一周写了20%的代码,突然发现原来已经写好的功能出现了一个严重的Bug 那现在就需要放下手中的新功能,去修复Bug 但这20%的代码不能舍弃,并且也担心丢失,这就需要开启一个新的版本控制。

    2. 尝试性的模块开发 业务人员给我们提出了一个需求,经过我们的思考和分析 该需求应该可以使用技术手段进行实现。 但是我们还不敢确定,我们就可以去创建一个分支基于分支进行尝试性开发。

    3. 使用分支,意味着你可以把你的工作从开发主线中分离出来,以免影响开发主线

  • 分支工作流程

    • Master: 指向提交的代码版本【具有指针的指向功能】

    • Header: 指向当前所使用的的分支

      由于现在只有一个master分支,所以head指向master。 


      如果从第三版本开启新得功能模块,又不能保证是否做得出来,那麽可以在第三版本开启一个新得分支,新得时间线。

    • 假如i新得时间线叫Dev,想使用新分支,只需让head这个指针指向Dev即可


      新分支开发了一个功能模块,提交了一个版本Dev指向新得提交版本,head指向Dev这个分支 

       如果Dev开发完新功能后,想合并到主分支上去,先把Dev分支提交完成后的版本,再让master的这个指针指向到Dev当前的这个时间版本,再让head这个指针指向到master这个主分支。然后就可以把Dev这个分支删掉了

       

2.3分支管理操作

  • 创建和切换

     创建命令:git branch 分支名

        切换命令:git checkout 分支名

  • 查看新分支文件

    查看文件命令:ls        【查看当前分支下的文件】

    总结:不同分支之间的关系是平行的关系,不会相互影响【类似于分身,各干各的】

  • 查看当前Git仓库的分支列表

    查看命令:git branch

    • 合并分支

      合并命令:git merge 分支名                【将此分支合并到主分支中】

  • 删除分支

    删除命令:git branch -d 分支名


3.远程仓库

3.1远程仓库工作流程

 左程序员在本地仓库push推送到远程仓库代码版本,右人可通过克隆把整个代码版本复制下来,包括各历史版本,然后右人又对代码进行修改,通过commit操作提交到了自己的本地仓库,利用push推送到远程仓库,左人通过pull拉取操作,把更新后的远程仓库代码版本更新到自己的本地仓库。

3.2远程仓库平台介绍

  • GitHub

  • 码云


 远程仓库操作情况:

                                情况1;先有本地仓库,远程仓库为空

                                情况2:现有远程仓库,本地仓库为空


3.4先有本地项目,远程为空

  • 步骤

    1. 创建本地仓库

    2. 创建或修改文件,添加(add)文件到暂存区,提交(commit)到本地仓库

    3. 创建远程仓库

    4. 将项目从本地仓库推送到远程仓库[推送之前需要先配置SSH公钥]

  • 创建远程仓库

  • 生成SSH公钥

    • 推送代码之前,需要先配置SSH公钥【一种协议】

    • 生成SSH公钥步骤

      1. 设置Git账户【生成ssh公钥时需要用到git账户】

        全局的账户,邮箱代表这台机器所有的Git仓库都会使用这个账户和邮箱,不做这个配置的话,生成SSH公钥时会出错

        • git config user.name(查看git账户)

        • git config user.email(查看git邮箱)

        • git config --global user.name “账户名”(设置全局账户名)

        • git config --global user.email “邮箱”(设置全局邮箱)

        • cd ~/.ssh(查看是否生成过SSH公钥)

1.生成SSH公钥   生成命令: ssh-keygen –t rsa –C “邮箱” ( 注意:这里需要敲3次回车)

2.查看命令: cat ~/.ssh/id-rsa.pub    [查看生成的公钥]

  1. 设置账户公钥【将公钥在配置到账户里面去】

  2. 公钥测试

    命令: ssh -T git@gitee.com

  • 将本地仓库版本推送到远程仓库

     

    • 步骤

                   1.为远程仓库的URL(网址),自定义仓库名称【原本的名称太长,自定义为简洁的形式】

                   2.推送 

      • 命令 git remote add 远程名称 远程仓库URL        【自定义名称】

      • git push -u 仓库名称 分支名   【推送命令


3.5先有远程仓库,本地为空

  • 步骤1.

                  1.将远程仓库的代码,克隆到本地仓库
    •                 克隆命令:git clone 仓库地址【仓库的url】
              2. 创建新文件,添加并提交到本地仓库【add,commit】
              3. 推送至远程仓库
              4. 项目拉取更新
                      拉取命令:git pull 远程仓库名 分支名

3.6代码冲突

  • 产生原因:

    两个程序员操作同一个文件,其中一个程序员在修改文件后,push到远程仓库,另一个程序员应该先pull将最新的代码更新到本地仓库后,在修改代码,之后push到远程仓库,结果他没有先pull将最新的代码更新到本地仓库,而是直接将自己的代码push到远程仓库,这样就可能会导致代码冲突

发生冲突,执行命令时报错,需要先进行拉取更新操作,git pull 远程仓库名 分支名,冲突文件就会出现黄色叹号,存在代码冲突

 黄标代表代码冲突

输入查看命令

cat XXX文件名.XXX

  • 如何解决冲突

    <<<<<<<和>>>>>>>中间的内容,就是冲突部分

    1. 修改冲突行,保存,即可解决冲突。

    2. 重新add冲突文件并commit到本地仓库,重新push到远程


4.IDEA集成Git

4.1IDEA中配置Git

  1. File -> Settings

  1. Version Control -> Git -> 指定git.exe存放目录

  1. 点击Test测试

4.2创建本地仓库

  1. VCS->Import into Version Control->Create Git Repository

  2. 选择工程所在的目录,这样就创建好本地仓库了

  3. 点击git后边的对勾,将当前项目代码提交到本地仓库

    注意: 项目中的配置文件不需要提交到本地仓库中,提交时,忽略掉即可

4.3版本切换

  • 方式一: 控制台Version Control->Log->Reset Current Branch...->Reset

    这种切换的特点是会抛弃原来的提交记录

  • 方式二:控制台Version Control->Log->Revert Commit->Merge->处理代码->commit

    这种切换的特点是会当成一个新的提交记录,之前的提交记录也都保留

4.4分支管理

  • 创建分支

    VCS->Git->Branches->New Branch->给分支起名字->ok

  • 切换分支

    idea右下角Git->选择要切换的分支->checkout

  • 合并分支

    VCS->Git->Merge changes->选择要合并的分支->merge

    处理分支中的代码

  • 删除分支

    idea右下角->选中要删除的分支->Delete

4.5本地仓库推送到远程仓库

  1. VCS->Git->Push->点击master Define remote

  2. 将远程仓库的路径复制过来->Push

4.6远程仓库克隆到本地仓库

File->Close Project->Checkout from Version Control->Git->指定远程仓库的路径->指定本地存放的路径->clone

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值