Git的安装和常用命令Git与SVN的区别Gitee远程仓库团队开发代码共享演示

目录

一、Git入门

1.1 Git简介

1.2 Git与SVN的区别

1.2.1 详解

1.2.2 图解 

1.3 Git相较于SVN的优势与劣势

1.3.1 Git的优势与劣势

1.3.2 SVN的优势与劣势

1.4 Git的工作流程

1.4.1 图解

1.4.2 详解

二、Git的安装以及常用命令

2.1 Git官网链接

2.2 安装步骤

2.3 Git的常用命令

2.3.1  常用命令概览

2.4 使用前准备

2.5 搭建项目环境

2.5 团队开发

2.5.1 案例

2.5.2 具体操作

三、Git命令的理论

四、学习Git的收获


一、Git入门

1.1 Git简介

Git 是一个分布式版本控制系统,用于跟踪和管理代码的变化。它是由Linus Torvalds在2005年创建的,旨在提供高效、灵活和可扩展的源代码管理工具。以下是 Git 的一些关键特点和概念的简要介绍:

  1. 分布式版本控制: Git 是分布式的,这意味着每个开发人员都拥有完整的代码库的副本,而不是依赖于集中式服务器。这使得开发人员能够独立工作,并在没有网络连接的情况下进行版本控制操作。

  2. 代码仓库: Git 使用仓库来存储代码和版本历史。一个仓库包含所有的代码、分支、提交历史以及配置信息。

  3. 提交(Commit): 提交是 Git 中的基本操作,它代表了代码库的一个快照,包括一组修改和相关的提交信息。提交是不可更改的,每个提交都有一个唯一的哈希标识。

  4. 分支(Branch): 分支是指代码库中的不同开发线,允许开发人员在不影响主要代码线的情况下进行独立的开发。Git 的分支操作非常高效,允许轻松创建、合并和删除分支。

  5. 合并(Merge): 合并是将一个分支的更改合并到另一个分支的操作。Git 提供了多种合并策略,以确保代码被合并到目标分支时不会引入冲突。

  6. 远程仓库(Remote Repository): 远程仓库是分布式团队协作的关键,它允许开发人员协同工作、共享代码,并在不同的位置之间同步代码。

  7. 克隆(Clone): 克隆是从远程仓库创建一个本地副本的过程。通过克隆,开发人员可以开始在自己的计算机上工作。

  8. 拉(Pull)和推(Push): 拉操作用于将远程仓库的更改同步到本地仓库,而推操作用于将本地更改上传到远程仓库。

  9. 标签(Tag): 标签是对特定提交的符号引用,通常用于标识版本或重要的里程碑。

Git 是许多开发团队和项目的首选版本控制工具,因为它强大、灵活,同时具有强大的分支和合并功能。它支持多种工作流程,并具有丰富的生态系统,包括各种图形用户界面和服务。 Git 的使用可以提高团队的协作效率,降低错误,确保代码可维护性和可追溯性。

1.2 Git与SVN的区别

1.2.1 详解

Git:

  1. 分布式版本控制: Git 是分布式版本控制系统,每个开发人员都拥有完整的代码库的副本。这允许离线工作、灵活的分支和合并,以及更好的协作。

  2. 速度: Git 在性能方面表现出色,因为它本地存储数据并使用快速的算法来处理操作。这使得 Git 在操作大型代码库时更加高效。

  3. 分支和合并: Git 的分支和合并操作非常轻松,允许开发人员创建、切换和合并分支,促进并行开发和实验性工作。

  4. 完整的历史记录: Git 记录每个提交的完整历史记录,包括修改的文件内容。这提供了更丰富的信息,有助于问题追踪和代码审查。

  5. 稳定性: Git 非常稳定,广泛用于许多大型开源项目和企业项目。

SVN (Subversion):

  1. 集中式版本控制: SVN 是集中式版本控制系统,代码库存储在中央服务器上,开发人员需要从服务器检出代码。这种方式限制了分支和合并的灵活性。

  2. 文件级别历史记录: SVN 跟踪文件级别的历史记录,而不是 Git 的内容级别。这在一些情况下可能导致信息不够详细。

  3. 传统文件锁定: SVN 支持文件锁定来避免多人同时编辑同一文件,但这也限制了并行开发的灵活性。

  4. 相对简单: SVN 相对来说更容易学习和使用,因此对于一些团队和项目来说可能更适合。

1.2.2 图解 

1.3 Git相较于SVN的优势与劣势

1.3.1 Git的优势与劣势

Git 的优势:

  • 分布式架构,适合分散团队和离线工作。
  • 高性能和快速的操作。
  • 强大的分支和合并支持,鼓励并行开发。
  • 完整的历史记录和内容级别的跟踪,有助于问题排查。
  • 大型开源项目广泛采用。

Git 的劣势:

  • 学习曲线较陡峭,对初学者来说可能有一些挑战。
  • 由于分布式性质,可能需要更多的存储空间。

1.3.2 SVN的优势与劣势

SVN 的优势:

  • 相对容易上手,适合初学者。
  • 文件锁定机制有助于避免冲突。
  • 适合一些传统开发工作流程。

SVN 的劣势:

  • 集中式架构可能导致单点故障。
  • 分支和合并支持较弱,可能导致工作流程不够灵活。
  • 文件级别历史记录和跟踪限制了问题排查的详细程度。

综合来看,Git 在许多现代开发场景中更受欢迎,特别是对于需要分布式开发、高性能和复杂工作流程的项目。然而,SVN 仍然在某些传统或较小规模的项目中有其用武之地,特别是对于那些更简单的版本控制需求。选择 Git 还是 SVN 取决于项目的具体要求和团队的工作流程。

1.4 Git的工作流程

1.4.1 图解

1.4.2 详解

Git的工作流程主要涉及以下几个关键概念:工作区(Working Directory)、暂存区(Staging Area)、本地仓库(Local Repository)和远程仓库(Remote Repository)。下面是Git的基本工作流程:

  1. 初始化仓库:

    • 使用git init命令在本地目录中初始化一个新的Git仓库。
  2. 进行修改:

    • 在工作区进行代码编辑和修改。
  3. 暂存文件:

    • 使用git add <file>命令将修改的文件添加到暂存区。
    • 可以多次使用git add命令添加不同的文件。
  4. 提交变更:

    • 使用git commit -m "<message>"命令将暂存区的文件提交到本地仓库。
    • 每次提交都会创建一个新的提交记录,记录了文件的变更和提交说明。
  5. 查看提交历史:

    • 使用git log命令查看提交历史,包括每个提交的作者、时间和提交说明。
  6. 分支管理:

    • 使用git branch命令查看所有分支,并使用git checkout <branch>命令切换到不同的分支。
    • 使用git merge <branch>命令合并不同分支的修改。
  7. 远程仓库交互:

    • 使用git remote add <name> <url>命令关联本地仓库和远程仓库。
    • 使用git push <remote> <branch>命令将本地提交推送到远程仓库。
    • 使用git pull <remote> <branch>命令从远程仓库获取最新的提交记录并合并到本地仓库。
  8. 冲突解决:

    • 当多个人同时修改同一文件的同一部分时,可能会发生冲突。
    • 使用合适的工具(如编辑器或Git客户端)解决冲突,并使用git add命令将解决后的文件标记为已解决。
    • 使用git commit命令提交解决冲突的文件。

以上是Git的基本工作流程,通过这些步骤,你可以管理和追踪文件的版本历史,协作开发,并与远程仓库进行交互。深入理解Git的工作流程对于有效地使用和管理Git版本控制系统至关重要。

二、Git的安装以及常用命令

2.1 Git官网链接

Git官网如下(注:下载安装2.2以上的版本):

Git下载官网icon-default.png?t=N7T8https://git-scm.com/downloads

2.2 安装步骤

进入官网进行安装操作:

选择存放路径:

然后一直点击Next即可。

下载完成后,在文件资源管理器中右键出现如图中,两个选项就说明安装成功。

2.3 Git的常用命令

Git 是一个强大的分布式版本控制系统,它有许多常用的命令,用于管理代码库。

2.3.1  常用命令概览

以下是一些常用的 Git 命令及其功能:

  1. git init:在目录中初始化一个新的 Git 仓库。

  2. git clone:从远程仓库克隆代码到本地。

  3. git add:将文件或目录的更改添加到暂存区,准备提交。

  4. git commit:提交暂存区中的更改到本地仓库。

  5. git status:查看工作目录、暂存区和本地仓库的状态。

  6. git log:查看提交历史记录。

  7. git diff:比较工作目录中的更改与暂存区或本地仓库中的内容。

  8. git branch:列出本地分支,或创建新分支。

  9. git checkout:切换分支或还原文件。

  10. git merge:合并一个分支的更改到当前分支。

  11. git pull:从远程仓库拉取并合并更改。

  12. git push:将本地更改推送到远程仓库。

  13. git remote:管理远程仓库的别名。

  14. git fetch:从远程仓库获取最新信息,但不合并。

  15. git reset:重置当前分支到指定的提交。

  16. git rebase:将当前分支的更改在另一个分支的基础上重新应用。

  17. git tag:创建、列出或删除标签,用于标识特定提交。

  18. git stash:暂存当前工作目录的更改,以便在另一个分支上工作。

  19. git blame:显示每行代码的最后一次修改及作者信息。

  20. git config:配置 Git 的各种选项,包括用户信息、别名等。

这些是 Git 中的一些常用命令,但 Git 还有许多其他命令和选项,用于处理更复杂的版本控制任务。你可以使用 git --helpgit help <command> 来查看 Git 命令的详细文档和用法。另外,Git 的社区和在线资源也提供了大量的教程和指南,以帮助你更好地理解和使用 Git。

2.4 使用前准备

首先我们需要有一个gitee的账号,前往gitee的官网进行注册,如下:

gitee官网icon-default.png?t=N7T8https://gitee.com/注册gitee账号如下:

创建账号之后创建一个仓库。点击右上角的+号,并且点击新建仓库。如下:

这里只有填入仓库的名称和选择开源之后,就直接创建仓库即可,点击创建,如下:

创建完成后,会有简易的命令行入门教程,如:Git 全局设置,创建 git 仓库,已有仓库?

将这些命令全部复制到一个文本文件中进行保存。如下:

之后在本地的目录中,创建一个工作区间,来对项目的开发,在这个工作区间中,鼠标右键

点击 Open Git Bash Here ,打开命令窗口。如下:

打开后的效果:

                                   这个命令窗口的命令,更多都是跟Linux是一样的。

打开窗口后,分别将Git 全局设置的命令输入其中分别执行一次。如下:

执行完后,查看本地用户下有没有 .gitconfig 的这个文件,打开看看,和我们的信息是一样的

就OK了。如下:

之后根据 创建 git 仓库的命令,先创建仓库,在进入仓库,进入后将该仓库标记为Git管理的仓库,如下:

标记后创建的仓库本地文件夹中会有个隐藏文件,如图  :

之后进行根据创建 git 仓库的命令,创建一个文件,再将文件给Git管理,之后查看状态

看到如图所示说明已经给Git管理,如果是红色说明没有。具体操作如下:

进行根据命令,上传到本地仓库并且给个备注,再将本地仓库和远程仓库进行绑定,绑定后,再将文件上传到远程仓库,(本地创建绑定远程仓库时,会要输入Git账号和密码.)如图 : 

再到创建仓库完成的页面刷新,就会看到所上传的文件,如图 : 

2.5 搭建项目环境

将项目的文件夹复制到Git工作区间,再将这个项目给Git管理,并且仓库状态。

git add .  这个命令是将该文件夹下所有文件给Git管理,如图 :

将项目上传到本地,并且给与备注,再将项目上传到远程仓库。

如图 : 

 

然后在Gitee的仓库中就可以看到了,如下:

2.5 团队开发

2.5.1 案例

项目已经在远程仓库部署好了,现在比如 : 开发团队中其他人需要获取其中的项目。

2.5.2 具体操作

  • 在这个需要获取其中项目的人中的工作区间,一样的,先点击Git Bash Here ,打开命令窗口。
  • 在命令窗口中输入克隆远程仓库中使用文件的命令。
  • 上面的网址是远程仓库的地址,在右上角有克隆的网址,谁需要就复制给谁即可,再加上命令执行即可拿到所有的文件。

 远程仓库使用文件的命令如下:

执行完成之后可以进入目录中查看到所有的文件。如下::

三、Git命令的理论

Git是一个分布式版本控制系统,它被广泛用于软件开发中的版本控制和协作。下面是一些常用的Git命令及其理论解释:

  1. git init:初始化一个新的Git仓库。

    • 创建一个新的本地Git仓库,用于存储项目的版本历史和文件变更。
  2. git clone <repository>:克隆一个远程仓库到本地。

    • 从远程仓库中复制所有历史和文件到本地,创建一个与远程仓库相同的副本。
  3. git add <file>:将文件添加到暂存区。

    • 将指定文件的当前版本添加到Git的暂存区中,以准备提交到版本历史中。
  4. git commit -m "<message>":将暂存区的文件提交到版本历史中。

    • 创建一个新的版本记录,包含了暂存区中所有文件的当前状态,并附带一条简短的说明信息。
  5. git push:将本地的版本历史推送到远程仓库。

    • 将本地仓库中的最新版本推送到与之关联的远程仓库中,实现版本同步和团队协作。
  6. git pull:从远程仓库拉取最新的版本到本地。

    • 从与当前分支关联的远程仓库中获取最新的版本记录和文件变更,并自动合并到本地仓库。
  7. git branch:列出所有分支。

    • 显示当前仓库中包含的所有分支,以及当前所在的分支。
  8. git checkout <branch>:切换到指定的分支。

    • 切换当前工作目录到指定分支,并更新工作区中的文件以符合该分支中最新的版本记录。
  9. git merge <branch>:将指定分支合并到当前分支。

    • 将指定的分支合并到当前分支,将两个分支的修改组合在一起并创建一个新的提交记录。
  10. git log:显示当前分支的版本历史。

    • 显示当前分支中所有提交记录的详细信息,包括作者、提交时间、说明等。

四、学习Git的收获

学习Git可以带来许多收获,无论是个人开发者还是团队协作工作,以下是学习Git的一些收获:

  1. 版本控制:Git是一种分布式版本控制系统,学习Git可以帮助你有效地管理代码的版本历史。你可以轻松地回溯到以前的版本、比较不同版本之间的差异,并追踪每个修改是由谁进行的。
  2. 团队协作:Git提供了方便的团队协作功能,多个开发者可以同时在同一个代码库上工作并独立进行修改。通过Git,你可以合并和解决冲突,确保团队成员间的协作更加高效。
  3. 分支管理:Git的分支功能让你能够轻松地创建、切换和合并分支。这对于开发新功能、修复bug或并行开发多个特性非常有用。你可以在不影响主线开发的情况下进行实验和开发。
  4. 撤销和恢复:Git提供了撤销和恢复功能,当你发现某个修改有问题或者想回到之前的某个状态时,可以回退到以前的版本。这样你可以避免不必要的错误和损失。
  5. 远程仓库管理:学习Git还可以让你了解如何与远程仓库进行交互,例如GitHub、GitLab或Bitbucket等。你可以将你的代码推送到远程仓库,与他人分享你的工作,或者从远程仓库获取最新的修改。
  6. 持续集成和部署:Git可以与其他工具和服务集成,如持续集成(CI)和持续部署(CD)平台。这些工具可以自动化构建、测试和部署你的代码,提高开发流程的效率和稳定性。
  7. 开源社区:Git有一个活跃的开源社区,你可以从中学习和获取有关Git的资讯、教程和最佳实践。你可以参与开源项目,与其他开发者交流经验,并为开源社区做出贡献。

总而言之,学习Git将使你成为更有效的开发者,并帮助你更好地协作、管理和维护代码项目。无论是个人项目还是团队项目,掌握Git都是非常有益的。


最后Git的安装和常用命令&Git与SVN的区别&Gitee远程仓库团队开发代码共享演示就到这里,祝大家在敲代码的路上一路通畅!

感谢大家的观看 !

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/122255.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

圣杯布局/双飞翼布局/flex/grid等,实现CSS三栏自适应布局的几种方法

简介 三栏布局是网页设计中常用的布局&#xff0c;即网页中的内容被分为三块&#xff1a;左侧/中间/右侧。其中两侧部分宽度固定&#xff0c;中间部分宽度自适应的根据容器&#xff08;浏览器&#xff09;宽度撑满剩余空间。而三栏布局也有很多变形&#xff0c;比如两栏或者N栏…

PHP代码示例

我们需要使用PHP的curl库来发送HTTP请求。以下是一个基本的示例&#xff1a; php <?php // 初始化curl $ch curl_init(); // 设置代理 curl_setopt($ch, CURLOPT_PROXY, ""); // 设置URL curl_setopt($ch, CURLOPT_URL, ""); // 执行请求 $respon…

基于单片机智能加湿器控制系统仿真设计

**单片机设计介绍&#xff0c; 698【毕业课设】基于单片机智能加湿器控制系统仿真设计 文章目录 一 概要系统组成总结 二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 单片机智能加湿器控制系统仿真设计介绍 单片机智能加湿器控制系统是一种利用微…

安卓RadioButton设置图片大小

RadioButton都不陌生&#xff0c;一般我们都会设置图片在里面&#xff0c;这就涉及一个问题&#xff0c;图片的大小。如果图片过大&#xff0c;效果很不理想。搜了很多方法&#xff0c;都不理想。无奈只能自己研究了 代码如下&#xff1a; 1&#xff0c;一个简单的 RadioButt…

Docker本地镜像发布到阿里云或私有库

本地镜像发布到阿里云流程 &#xff1a; 1.自己生成个要传的镜像 2.将本地镜像推送到阿里云: 阿里云开发者平台:开放云原生应用-云原生&#xff08;Cloud Native&#xff09;-云原生介绍 - 阿里云 2.1.创建仓库镜像&#xff1a; 2.1.1 选择控制台&#xff0c;进入容器镜像服…

安卓数据恢复工具哪个强? 10 个最佳 Android 数据恢复应用程序

如果您是 Android 用户并且已经使用您的设备一段时间&#xff0c;那么您很可能遇到过与数据相关的问题。这可能是由于软件问题导致文件被意外删除或损坏。许多人不经常备份数据&#xff0c;从而丢失了重要的文档、图像、视频文件等。最糟糕的是&#xff0c;数据丢失可能随时发生…

Electron[3] 基础配置准备和Electron入门案例

1 背景 上一篇文章已经分享了&#xff0c;如何准备Electron的基础环境了。但是博客刚发才一天&#xff0c;就发现有人问问题了。经过实践发现&#xff0c;严格按照作者的博客教程走是不会有问题的&#xff0c;其中包括安装的环境版本等都要一致。因为昨天发的博客&#xff0c;…

持续集成交付CICD:Jenkins Pipeline与远程构建触发器

目录 一、实验 1.Jenkins Pipeline本地构建触发器 2.Jenkins Pipeline与远程构建触发器&#xff08;第一种方式&#xff09; 3.Jenkins Pipeline与远程构建触发器&#xff08;第二种方式&#xff09; 4.Jenkins Pipeline与远程构建触发器&#xff08;第三种方式&#xff0…

扬帆起航正当时——远航汽车下线仪式在山西运城成功举办

11月8日&#xff0c;“智赢未来 远航汽车——远航汽车下线仪式”在山西省运城市大运集团新能源生产基地成功举办。运城市委书记丁小强、市长储祥好&#xff0c;以及来自省、市、区各级政府领导&#xff0c;远航汽车供应商代表、客户代表、全国主流媒体&#xff0c;大运集团各级…

用于汽车主驱逆变器的NVVR26A120M1WST、NVVR26A120M1WSS、NVVR26A120M1WSB 1200V、碳化硅(SiC)模块

碳化硅&#xff08;SiC&#xff09;模块 – EliteSiC主驱逆变器功率模块 1200V&#xff0c;半桥&#xff0c;介绍 1、&#xff08;NVVR26A120M1WST&#xff09;功率模块是用于混合动力车&#xff08;HEV&#xff09;和电动车&#xff08;EV&#xff09;主驱逆变器应用的VE-Tra…

YOLOv8教程系列:五、关闭数据增强

YOLOv8教程系列&#xff1a;五、关闭数据增强 在一些特殊情况下&#xff0c;特别是在计算机视觉任务中&#xff0c;如目标检测&#xff0c;图像的颜色扰动可能会对算法的性能和稳定性产生重要影响。在这些情况下&#xff0c;我们可能需要采取一些措施来关闭部分或全部的数据增…

修改iframe生成的pdf的比例

如图想要设置这里的默认比例 在iframe连接后面加上#zoom50即可&#xff0c;50是可以随便设置的&#xff0c;设置多少就是多少比例 <iframe src"name.pdf#zoom50" height"100%" width"100%"></iframe>

U-Mail邮件服务器软件,企业自建邮件服务器的最佳选择

随着网络化办公的发展&#xff0c;电子邮件已经成为企业对外、对内交流的重要渠道之一。然而&#xff0c;随着电子邮件所产生的海量数据&#xff0c;也为企业的运营带来了巨大的风险&#xff0c;数据泄露、黑客攻击、垃圾邮件攻击等等。为了&#xff0c;有效规避这些风险&#…

对称二叉数[简单]

优质博文&#xff1a;IT-BLOG-CN 一、题目 给你一个二叉树的根节点root&#xff0c; 检查它是否轴对称。 示例 1&#xff1a; 输入&#xff1a;root [1,2,2,3,4,4,3] 输出&#xff1a;true 示例 2&#xff1a; 输入&#xff1a;root [1,2,2,null,3,null,3] 输出&#xff…

【Git】Git基础命令操作速记

【Git】Git基础命令操作速记 文章目录 【Git】Git基础命令操作速记1. 初始化1.1 设置用户名和邮箱1.2 初始化仓库 2. 基础命令2.1 add和commit2.2 reset2.3 查看日志2.4 删除/找回本地仓库文件2.5 找回暂存区文件2.6 diff命令(找不同) 3. 分支命令3.1 查看分支3.2 创建分支3.3 …

【Data Grip】打开控制台编写sql语句

这里我从表打开&#xff08;也可以从其他地方打开都行&#xff0c;右键new,出现Query Console 点击即可)控制台&#xff0c;右键表 new 点击query console 在上面编写sql语句 编写完之后 点击绿色三角形运行

github官网打不开或访问慢的解决办法

对国内程序员而言&#xff0c;github官网经常面临打不开或访问慢的问题&#xff0c;今天教你一招非常简单且好用的小技巧&#xff0c;轻松访问github官网。 1、github官网打不开的原因 首选我们说下github官网打不开的原因到底是什么。细心的同学会发现&#xff0c;github偶尔…

Linux-命令行命令

注&#xff1a;[]的内容说明是可选的 1.ls ls [-a -l -h] [Linux路径] >如果没有参数&#xff0c;就展示当前工作目录的内容 > -a&#xff1a;all的意思&#xff0c;即列出所有文件&#xff08;包含隐藏文件/文件夹&#xff09; > -l&#xff1a;以列表形式展示内容&…

访问控制列表

目录 ACL ACL原理 ACL包过滤方式 ACL通用命令 查看ACL表命令 删除整张表命令 接口配置ACL ACL分类 标准ACL 标准ACL的动作与条件 通配符掩码 扩展ACL 扩展ACL的动作与条件 命名ACL 前言 书写方式 ACL 含义&#xff1a;访问控制列表&#xff0c;其是一种包过滤…

四、IPSec NAT穿越

IPSec NAT穿越 1、IPSec NAT穿越2、IPSec穿越NAT的处理3、IKEv2与NAT穿越3.1、NAT-T能力检测3.2、NAT网关发现3.3、NAT穿越的启用3.4、NAT-keepalive 4、IPSec NAT穿越示例&#xff08;网关之间存在NAT设备&#xff09;5、IPSec NAT穿越示例&#xff08;两侧存在NAT设备&#x…
最新文章