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

news/2024/5/17 16:32:51 标签: git, java, gitee, 团队开发, 远程工作, svn

目录

一、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.niftyadmin.cn/n/5165378.html

相关文章

fabric.js点击group 种的子元素

fabric.js点击group 种的子元素 切记 一档要设置 group 的subTargetCheck 属性为true 切记 一档要设置 group 的subTargetCheck 属性为true 代码如下 <template><div class"page"><canvas id"canvas" width"400" height"4…

Oracle递归查询树形数据

实际生活有很多树形结构的数据&#xff0c;比如公司分为多个部门、部门下分为多个组&#xff0c;组下分为多个员工&#xff1b;省市县的归属&#xff1b;页面菜单栏等等。 如果想查询某个节点的父节点或者子节点&#xff0c;一般通过表自身连接完成&#xff0c;但如果该节点的子…

split() 函数实现多条件转为数据为数组类型

使用 split() 函数并传递正则表达式 /[,;.-]/ 作为分隔符来将字符串按照逗号、分号和破折号进行拆分&#xff0c;并将结果赋值给 splitArray 数组。下面是一个示例代码&#xff1a; 在上面的示例中&#xff0c;我们使用 split() 函数将 inputString 字符串按照逗号、分号和破折…

Linux nohup后台启动/ 后台启动命令中nohup 、、重定向的使用

文章目录 一、前言二、nohup&#xff08;不挂断&#xff09;简介三、nohup使用3.1、nohup启动3.2、nohup与&&#xff0c;后台运行3.3、nohup与>&#xff0c;日志重定向3.4、nohup后台启动-综合使用(推荐)2>&1 3.5、nohup后台启动(不生成日志) 四、查看进程五、知…

数字化广告运营,小迈科技的关键一步

数据驱动广告运营是小迈科技提升整体经营效率、构建竞争优势的重要选择。 截止目前&#xff0c;小迈科技已经完成了数据驱动的广告运营体系的搭建&#xff0c;并通过与神策数据的深入合作&#xff0c;借力神策客户旅程分析平台&#xff0c;在广告投放、运营活动等各个环节实现了…

骨传导蓝牙耳机推荐,2023骨传导耳机选购攻略

相信大家佩戴入耳式耳机时间长后&#xff0c;都会出现耳朵痛的情况&#xff0c;这也是这类耳机的一个通病了&#xff0c;为了缓解这一问题&#xff0c;骨传导耳机出现了&#xff0c;并且凭借佩戴舒适&#xff0c;并且不会耳痛等优点迅速成为当下最受欢迎的耳机款式&#xff0c;…

visual studio 启用DPI识别功能

在开发widow程序时&#xff0c;有时必须将电脑 设置-->显示-->缩放与布局-->更改文本、应用项目的大小-->100%后&#xff0c;程序的画面才能正确运行&#xff0c;居说这是锁定了dpi的原因&#xff0c;需要启dpi识别功能。设置方法如下&#xff1a; 或者

Centos批量删除系统重复进程

原创作者&#xff1a;运维工程师 谢晋 Centos批量删除系统重复进程 客户一台CENTOS 7系统负载高&#xff0c;top查看有很多sh的进程&#xff0c;输入命令top -c查看可以看到对应的进程命令是/bin/bash     经分析后发现是因为该脚本执行时间太长&#xff0c;导致后续执…