首页 > 其他分享 >第十天(实训学习整理资料(九)版本控制Git)

第十天(实训学习整理资料(九)版本控制Git)

时间:2024-11-05 16:46:48浏览次数:3  
标签:Git 第十天 版本控制 -- 仓库 git 本地 远程 分支

目录

一、安装配置

1、下载地址

2、初始配置

二、初始化本地仓库

1、版本库

2、初始化本地仓库

3、本地仓库的构成

三、版本管理

1、提交新文件

2、修改文件

3、查看历史版本

4、版本回滚

5、代码撤销

6、删除文件

四、远程仓库

1、定义

2、远程仓库分类

3、注册并新建远程仓库

4、远程仓库与本地仓库的关联

五、集成git工具到idea编译器

六、分支管理

1、查询本地所有分支

2、创建本地分支

3、切换分支

4、创建并切换分支

5、合并分支

七、代码合并冲突处理


Linux下使用到的命令:

ls -al //查看当前目录下的文件及文件夹

mkdir //新建目录

rm -rf //递归强制删除文件夹

一、安装配置

1、下载地址

https://git-scm.com/

2、初始配置

#用户名

git config --global user.name "自定义用户名"

#邮箱(公司的联系方式--追责)

git config --global user.email "邮箱地址"

说明:

安装好git后,第一步就需要初始化个人信息。

设置好后查询,检查是否配置成功,不加用户名或邮箱就代表查询

二、初始化本地仓库

1、版本库

        用于跟踪项目代码的仓库(目录),每个本地仓库中会创建一个隐藏文件夹

        .git 同级目录下做的所有操作都会被git监管。

2、初始化本地仓库

        在普通文件夹下执行如下命令,可以将该文件夹初始化为本地仓库:

                git init

3、本地仓库的构成

        工作区:存放代码的位置

        版本库:工作区中.git文件夹,其中包含暂存区 和 分支区

        暂存区:通过git add/rm命令执行后,操作保存的位置(类似于缓存区)

        分支区:是最终版本信息保存的位置,git commit 命令提交的信息都会存储在 分支区,通常版本库初始化后会默认创建一个本地分支(master) 也叫主分支。

        master最好不要删除。

工作区代码发生修改--git add(添加)-->暂存区--git commit(提交)-->分支区

三、版本管理

1、提交新文件

        1-在工作区创建新文件

        2-查看本地仓库的状态

                git status

        3-添加新建文件的状态到暂存区

                git add 文件名

        4-将暂存区的状态提交到本地分支区

                git commit -m "备注信息"

2、修改文件

        与提交新文件的流程步骤相同

3、查看历史版本

        #查看提交的详细日志信息

                git log

        #查看基本日志信息

                git log --pretty=oneline

        #查看详细的操作日志

                git reflog

4、版本回滚

        git reset --hard HEAD^

        ---或者---

        git reset --hard commitID

说明:

        HEAD 头指针指向当前最新的代码(当前所在版本)

        ^ 版本回滚到最近一次提交(回跳一个版本)

        commitID: 执行commit时随机生成的id号,id号取前>=7位即可

5、代码撤销

        #只撤销工作区的修改

                git checkout -- <file>...

        #撤销暂存区的状态

                第一步:从暂存撤销回工作区

                        git reset HEAD <file>...

                第二步:撤销工作区

                        git checkout -- <file>...

                #已经提交到本地分支的只需要用版本回滚

6、删除文件

情况一:通过物理删除,利用git记录操作

        rm -f 文件

        git add/rm 文件...

        git commit -m "备注"

情况二:利用git的rm命令执行删除

        git rm 文件 #删除文件并添加暂存

        git commit -m "备注"

四、远程仓库

1、定义

        如果需要将项目托管在支持git的服务中心时,要求服务中心能24小时运行,还可以提供其他的管理(用户,项目,用户组,权限)操作。

2、远程仓库分类

        Github https://github。com/ 国外

        码云 https://gitee.com/ 国内

        极狐 gitlab,gitblit 私有

3、注册并新建远程仓库

        创建的远程仓库一般就是项目名。

        创建远程仓库的配置项:

初始化仓库:

        选择语言---选择开发项目的主要语言(计算机语言)

        .gitignore---配置到该文件的文件名或文件夹将不会被git跟踪管理

        开源许可---apache2.0

设置模板:

        Readme文件---项目的说明文件

选择分支模型:

        没有特殊要求直接选为默认的master

4、远程仓库与本地仓库的关联

        由于本地的git与远程仓库进行代码跟踪时,对数据的安全性有绝对性要求。

        因此可以利用ssh协议完成数据传输的加解密过程。

ssh配置流程:

        本地:

1、在git bash上通过指令生成ssh的公钥和密钥(-t rsa表示加密算法)

        ssh-keygen -t rsa -C "git初始化时配置的邮箱地址"

2、进入用户家目录下的.ssh文件夹

        cd ~/.ssh/

说明:在文件夹中有两个文件id_rsa(密钥)id rsa.pub(公钥)

        密钥文件自己保存,不能对外暴露。公钥是配置到要进行交互的服务端(码云)。

3、在码云控制台配置公钥

        控制台--设置--安全设置--ssh公钥--添加公钥

说明:

        公钥标题可以自定义,公钥在git bash中查看id_rsa.pub文件

        cat ~/.ssh/id_rsa.pub

仓库关联:

        情况一:远程仓库已经存在,只需要将仓库拉取到本地并完成关联。

                        git clone [email protected]:用户名/仓库名.git.

        情况二:现有本地仓库,再关联远程仓库

                1--先初始化本地仓库,项目根目录执行命令

                        git init

                2--在远程创建一个名称与本地仓库同名的仓库

                3--远程仓库关联

                        #在本地添加一个名叫origin的远程仓库地址

                        git remote add origin [email protected]:用户名/仓库名.git

                        #将远程代码拉取到本地,并解决历史差异

                        git pull origin master --allow-unrelated-histories

                        #在第一次推送本地代码到远程仓库时可以添加-u参数

                        git push -u origin master

五、集成git工具到idea编译器

        ile->settings->versioncontrol->git

六、分支管理

1、查询本地所有分支

        git branch

2、创建本地分支

        git branch 分支名称

3、切换分支

        git checkout 分支名称

4、创建并切换分支

        git checkout -b 分支名称

5、合并分支

        git merge 分支名 //快速合并(只保留一条master主分支)

        git merge --no-ff 分支名 //关闭快速合并(保留合并时的分支信息)

注意:合并分支时需要先切换到主分支。

七、代码合并冲突处理

        如果有多个人修改了同一个文件会出现合并冲突。

        删除特殊内容:

        <<<<<<< HEAD

        原来的代码

        =====

        准备合并的新代码

        正在合并的分支

        当处理完合并冲突后,需要完成一次提交。

标签:Git,第十天,版本控制,--,仓库,git,本地,远程,分支
From: https://blog.csdn.net/Li_030406/article/details/143513632

相关文章

  • git命令
    添加远程仓库:gitremoteadd远程仓库名地址从仓库clone项目:gitclone地址(真正的拉全部代码,后续都是在基于代码改变动)初始化本地仓库:gitinit添加所有文件到暂存区:gitadd.提交初始更改:gitcommit-m"xxx"添加远程仓库:gitremoteadd远程仓库名地址(这里origin是开发者在......
  • 规范:项目、目录、文件、样式、事件、变量、方法、url参数、注释、git提交 命名规范及
    一、规范命名的重要性易懂、通用、规范、标准、专业性、是经验积累的体现1.1、常见命名方法序号命名方法解释1全小写2全大写3驼峰:小驼峰命名法4驼峰:大驼峰命名法5烤串命名法/脊柱命名法6下划线分隔法二、项目名采用小写字母和中划线(-)连接的方式命名,如my-project序号规......
  • 开源的 API 学习平台「GitHub 热点速览」
    前有5万颗星标的开源项目HTTPie因误操作导致Star清零(2022年),上周知名开源项目Elasticsearch也经历了Star一夜清零的事件。这些事故的原因均是管理员误将开源项目从公开状态转为私有状态所导致。为避免类似事件再次发生,GitHub已在转为私有的功能处增加了两次确认步骤,并......
  • git原理与上传
    言:git是一个软件,gitee/github是一个网站,这里有什么联系吗?我们身为一个程序员不可能不知道github,但是毕竟这是外国的网站,我们不翻墙的情况下,是无法访问的(或者就是太慢了,或者就是英语不好的同学不想使用),所以可以使用中国的平替gitee。我们一般通过它用来上传代码,但是各位可能......
  • git-manifest-url学习笔记
    repo初始化仓库,一次下载多个Git仓库的内容repoinit--repo-url 指定repo工具的自身仓库地址-u指定要同步的分支名称 -blinux-m  指定manifest文件中要使用的具体manifest文件-u:指定manifest仓库的URL。Manifest仓库包含了所有需要同步的Git仓库的信息,以及这些仓库......
  • 版本控制工具 SVN 已跳过,其余有冲突
    更新报错解决原文:https://blog.csdn.net/hty18410140180/article/details/86231998在项目文件夹中,点击解决再点击确定一般我还会再点击一下清理再点击确定然后再更新,如果还是提示有冲突,就把冲突的那几个文件夹删除后,再更新。......
  • Git基本操作
    检查当前工作目录状态在你开始任何工作之前,先检查你的工作区是否干净,是否有未提交的修改或暂存的更改。使用以下命令:gitstatus如果有未提交的修改,根据情况决定是提交它们,暂存,还是放弃修改。如果有暂存的更改,可以使用gitstash暂存它们。确保在正确的分支上确认在......
  • git graph 的不同颜色线含义
    在VisualStudioCode的GitGraph扩展中,不同颜色的线条通常用于表示Git分支和合并的状态。具体颜色的含义可能会有所不同,但一般来说,以下是一些常见的颜色及其代表的含义:常见颜色及其含义1.蓝色:2.通常表示主分支(如main或master)的提交记录。这条线显示了主要开发线的演......
  • 如何使用git将自己的代码上传到别人的gitee仓库
    1、git与gitee的关系1.Git是版本控制系统,它是一个本地工具,用于在开发者的计算机上跟踪和管理代码的历史记。2.Gitee是一个基于云的平台,类似于GitHub,它托管了数百万个Git存储库,开发者可以将他们的Git项目上传到Gitee以与其他人共享和协作。Gitee提供了一个可视化的界面和一......
  • git入门教程
    git入门教程1:git简介git入门教程2:git发展历史git入门教程3:安装配置git入门教程4:git工作流程git入门教程5:git仓库操作git入门教程6:git基本版本控制git入门教程7:git与远程仓库的交互git入门教程8:git高级分支管理git入门教程9:配置Git钩子git入门教程10:git性能优化git入门教程11......