热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Git管理版本详细教程

一、远程仓库与本地仓库关联的逻辑关系Remote: 远程仓库,即你在 Github 或者 Gitee 等平台上创建的项目仓库;Repository: 本地仓库,你可以认为就是我们拉

一、远程仓库与本地仓库关联的逻辑关系

0



  • Remote: 远程仓库,即你在 Github 或者 Gitee 等平台上创建的项目仓库;

  • Repository: 本地仓库,你可以认为就是我们拉取项目后生成的 .git 文件夹;

  • Index: 暂存区,事实上它只是一个文件,即 .git 文件夹里面的 index 文件,它保存即将提交到本地仓库的文件列表信息;

  • workspace: 工作区,即你在 VS code 或者 WebStorm 编译器正在编写的代码。

       如上内容有参考其他文章,如有侵权请联系我删除。

二、使用Git管理程序版本详细教程

1、在远程Git上创建项目并获取Git项目的地址:创建好项目远程仓库,就能获取到一个 .git 结尾的地址,或者公司直接提供一个地址,如下:

 



2、通过Git Bush在我们本地建的空目录下面输入下面命令即可拉取到项目到本地。

git clone https://github.com/XXXXXX/XXXXXX.git

3、查看远程分支:拉取完项目后,我们是处于 master/main 主分支,根据要求看是否需要切换到某个分支进行特定开发:

git branch -r

4、查看本地分支:本地创建的分支情况应该是和远程分支对应,如果本地分支未何远程分支关联,则在本地的操作不影响远程:

git branch



5、创建本地分支:通过下面的命令,创建好一个本地分支,该分支是基于当前所在分支创建的:

git branch dev(分支名称, 可以随便取)
关于分支的其他命令
①git branch -m newBranchName //重命名本地分支(对远程仓库不会有影响)

git branch -d dev                  //删除本地分支(对远程仓库不会有影响)



 

6、切换分支:创建好本地分支,我们就可以切换到该分支上

git checkout dev //创建和切换两个操作也可以一起做: git checkout -b xxx (创建并切换到该本地分支)



7、发布本地分支到远程分支,当创建好一个本地分支的时候,把该分支发布到远程仓库去,让远程仓库也拥有该分支,且让它和你本地分支进行关联,方便我们后续直接进行 git pull 或者 git push 操作。

git push origin dev

8、建立本地分支与远程分支的关联

(1)本地分支与远程分支关联这步不是必须,但后续就能很方便的直接使用 git pull 或者 git push 获取或提交该分支的代码,而不用去指定分支。

(1)本地新建分支,但是远程没有新建分支,执行如下命令之后,远程仓库会多一个dev分支
①git push -u origin tes
②git push --set-upstream origin dev
(2)本地没有分支,远程已存在分,我们需要创建本地分支,并将远程分支和本地的进行关联支
① git checkout -b Test origin/Test
②git checkout -b dev --track origin/dev
③git pull origin dev:dev-------两个dev分别表示远程分支名:本地分支名
(3)本地有分支,远程有分支,但还未关联,需要进行关联
git branch --set-upstream-to=origin/master



11、添加文件进缓存区,在对代码更改后,要把代码提交到远程仓库,我们就要先把代码添加到暂存区,之后提交到本地仓库,最后才能提交到远程仓库。

git add xxx(文件路径) # 多个 git add xxx(文件路径) xxx(文件路径) xxx(文件路径) ...
//把工作区更改的所有文件都添加进暂存区
git add .
//当你误把文件添加进暂存区,也不要慌,有添加,就肯定有删除
git rm --cached xxx(文件路径)
//清空暂存区,暂存区实质是 .git 目录下的 
rm .git/index

 

12、查看工作区与暂存区的状态,这个命令用于查看工作区和暂存区的状态,能看到哪些文件被修改了,它修改后是否被暂存了,又或者还没有暂存。这个暂存的过程,专业的叫法是 Git tracked,也就是是否被跟踪。

git status
绿色的文件是已经添加进暂存区的,红色的文件则是未添加到暂存区的,
新文件则是 new file,
修改的文件则是 modified,
删除的是 deleted。

13、提交暂存区文件到本地仓库

git commit -m "说明信息"
//通过上面的命令,我们就将暂存区的文件提交到本地仓库了,我们可以通过 git status 再次查看暂存区的情况
查看提交记录
git log

//如果你想要显示最近几条记录,你可以通过 git log -n(n为数字, 可以随意指定) 命令完成。

 

14、提交本地仓库文件到远程仓库

git push

 

 15、其他命令

①在远程建立一个新的分支,同步到本地
git fetch origin git branch
-r
②合并分支
比如在dev1开发一个功能,这个功能在dev1上验证通过了,要合入master,可以使用 git merge 来实现。
切换到主分支 git checkout master 合并dev1到master git merge dev1
③查看关联情况
git branch
-vv
④查看远程仓库地址
git remote -v

推荐阅读
  • 深入解析Java虚拟机(JVM)架构与原理
    本文旨在为读者提供对Java虚拟机(JVM)的全面理解,涵盖其主要组成部分、工作原理及其在不同平台上的实现。通过详细探讨JVM的结构和内部机制,帮助开发者更好地掌握Java编程的核心技术。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • Java 架构:深入理解 JDK 动态代理机制
    代理模式是 Java 中常用的设计模式之一,其核心在于代理类与委托类共享相同的接口。代理类主要用于为委托类提供预处理、过滤、转发及后处理等功能,以增强或改变原有功能的行为。 ... [详细]
  • 本文详细记录了在基于Debian的Deepin 20操作系统上安装MySQL 5.7的具体步骤,包括软件包的选择、依赖项的处理及远程访问权限的配置。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • Scala 实现 UTF-8 编码属性文件读取与克隆
    本文介绍如何使用 Scala 以 UTF-8 编码方式读取属性文件,并实现属性文件的克隆功能。通过这种方式,可以确保配置文件在多线程环境下的一致性和高效性。 ... [详细]
  • 本文详细介绍了如何通过Git Bash在本地仓库与远程仓库之间建立连接并进行同步操作,包括克隆仓库、提交更改和推送更新等步骤。 ... [详细]
  • 任务,栈, ... [详细]
  • Linux环境下Git安装及常见问题解析
    本文详细介绍了在Ubuntu系统中安装Git的过程,包括环境检查、软件安装、用户配置以及SSH密钥生成等步骤,并针对安装过程中可能出现的问题提供了有效的解决方案。 ... [详细]
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • 火星商店问题:线段树分治与持久化Trie树的应用
    本题涉及编号为1至n的火星商店,每个商店有一个永久商品价值v。操作包括每天在指定商店增加一个新商品,以及查询某段时间内某些商店中所有商品(含永久商品)与给定密码值的最大异或结果。通过线段树分治和持久化Trie树来高效解决此问题。 ... [详细]
  • 本文详细介绍了如何构建一个高效的UI管理系统,集中处理UI页面的打开、关闭、层级管理和页面跳转等问题。通过UIManager统一管理外部切换逻辑,实现功能逻辑分散化和代码复用,支持多人协作开发。 ... [详细]
  • 深入解析:OpenShift Origin环境下的Kubernetes Spark Operator
    本文探讨了如何在OpenShift Origin平台上利用Kubernetes Spark Operator来管理和部署Apache Spark集群与应用。作为Radanalytics.io项目的一部分,这一开源工具为大数据处理提供了强大的支持。 ... [详细]
  • 在Win10上利用VS2015构建Caffe2环境
    本文详细介绍如何在Windows 10操作系统上通过Visual Studio 2015编译Caffe2深度学习框架的过程。包括必要的软件安装、环境配置以及常见问题的解决方法。 ... [详细]
  • 随着EOS主网的成功启动,众多开发者和投资者对其给予了高度关注。本文旨在介绍如何构建EOS开发环境,包括所需的基本硬件配置、软件安装步骤以及常见问题的解决方案。 ... [详细]
author-avatar
勇_俊
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有