版本控制工具:使用Git的意义和笔记

简介: 版本控制工具:使用Git的意义和笔记

最近在上软件工程工具的课,老师留了一个课下作业,内容是:

1.版本控制的作用和意义

2.选择一个版本控制工具及说明:

3.如何使用?使用的意义?


由于之前对于Git有所接触,就做了简单的文档整理并且就发到博客上,仅供参考记录。


一、版本控制的作用和意义


“代码”作为软件研发的核心产物,在整个开发周期都在递增,不断合入新需求以及解决bug的新patch,这就需要有一款系统,能够存储、追踪文件的修改历史,记录多个版本的开发和维护。于是,版本控制系统(Version Control Systems)应运而生。


版本控制工具的作用:帮助我们记录和跟踪项目中各文件内容的修改变化。

记录文件修改的手工做法:复制文件以备份,在备份的文件名中添加上日期和时间。

需要版本控制工具的原因:为了提高效率,我们希望这类操作是自动进行的,这是我们需要版本控制工具的原因。


版本控制工具(Version Control System)的分为3类:

1、直接访问式版本控制系统;

2、集中式版本控制工具,比如CVS、SVN;

3、分布式版本控制工具,比如git


二、选择一个版本控制工具,说明:

先说一下分布式版本控制系统:

分布式版本控制系统的特点是每个客户端都是代码仓库的完整镜像,包括项目文件的变更历史。所有数据分布的存储在每个客户端,不存在中央服务器。可能有人会问,我们公司使用Git分布式存储工具,也有“中央服务器”啊?其实,这个所谓的“中央服务器”仅仅是用来方便管理多人协作,任何一台客户端都可以胜任它的工作,它和所有客户端没有本质区别。


分布式版本控制系统的优点:

1.版本库本地化,版本库的完整克隆,包括标签、分支、版本记录等。

2.支持离线提交,适合跨地域协同开发。

3.分支切换快速高效,创建和销毁分支廉价。


分布式版本控制系统的缺点:

1.学习成本高,不容易上手。

2.只能针对整个仓库创建分支,无法根据目录建立层次性的分支。


这里我选择分布式版本控制工具git,看一下Git的优点:

1.Git有能力高效管理类似Linux内核一样的超大规模项目;

2.Git实现了离线开发、代码审核特性,解决了跨地域协同开发中代码质量和编码协同的问题;

3.分支管理功能强大,便于查询和追溯分支间的提交历史;

Git基于DAG(有向非环图)的设计比SVN的线性提交提供更好的合并追踪,避免不必要的冲突,提高工作效率

5.Git通过哈希加密保证数据的完整性,防止恶意篡改;

6.代码分布存储,异地容灾,保证数据安全;

7.Git支持团队成员自建本地版本库和分支,只有客户发出合并请求,开发人员才能提交代码,客户可以对提交说明、代码规范等方面逐一审核。


三、如何使用?使用的意义?


在使用Git的时候,我们可以先去注册一个码云:码云官网

这是我的码云


下面是我针对结合码云远程仓库与Git指令的部分笔记

(整理尚不清晰,会抽时间重新整理,如有错误,敬请告知):


线上git仓库选择克隆/下载===》SSH认证选项
复制ssh认证协议的url:giturl
git clone giturl   ===>下载线上仓库到本地,然后本地会生成一个文件夹
右击文件夹,选择 git bash 出现一个新的bash命令行
git status  //查看更改
git add .  //文件路径名字
git commit -m "提交自定义注释"
git push origin head:master
git clone giturl  //从master分支更新内容
点击下载下来的文件夹,右击-> git bash
git  checkout origin/yzh  //切换远程分支到yzh
git status  //检查有没有变动
git add .    //文件路径   添加更新的文件,这里注意add与.直接有空格
git commit -m "添加更新原因"
git push origin head:yzh   执行更新到远程yzh分支
git pull 从远程库更新到本地                
远程仓库更新到自己的分支 (git pull origin yzh)
git push 从本地更新到远程仓库


关于具体如何使用,建议可以参考这个教程:廖雪峰的网站Git教程


注意:(近期Git更新后,最新版本的Git指令比较严谨,一些指令可能不能像原来那样宽泛的使用)


Git是目前比较流行的版本控制软件,能更加切合我们对于项目版本的管理,使项目业务更加合理、人性化。



目录
相关文章
|
7月前
|
数据可视化 开发工具 C#
.NET开源、免费、跨平台的Git可视化管理工具
俗话说得好“工欲善其事,必先利其器”,合理的选择和使用可视化的管理工具可以降低技术入门和使用的门槛。今天大姚给大家分享一款.NET Avalonia开源、免费、跨平台、快速的Git可视化管理工具:SourceGit。
|
4月前
|
开发工具 数据安全/隐私保护 git
记录一次使用git工具拉取coding上代码密码账号错误的经历
这篇文章记录了作者在使用Git工具从Coding平台克隆项目时遇到的账号密码错误问题,并分享了通过清除电脑凭证中错误记录的账号密码来解决这个问题的方法。
记录一次使用git工具拉取coding上代码密码账号错误的经历
|
4月前
|
敏捷开发 存储 开发工具
版本控制系统的选择:Git与SVN的比较
【8月更文挑战第14天】Git和SVN都是优秀的版本控制系统,它们各自具有独特的优势和适用场景。在选择版本控制系统时,需要根据具体的项目需求、团队特点和开发模式来综合考量。对于需要分布式团队协作、高效处理大型项目或采用敏捷开发模式的团队来说,Git是一个更好的选择。而对于传统团队、集中式开发或简单项目来说,SVN可能更加合适。无论选择哪种版本控制系统,都应该充分利用其提供的工具和功能来提高代码质量和开发效率。
|
1月前
|
存储 开发工具 git
git工具使用教程全讲解
本文介绍了版本控制的概念及其重要性,详细对比了多种版本控制工具,如VSS、CVS、SVN和Git,重点讲解了Git的基本使用方法、工作原理及与SVN的区别。此外,文章还介绍了GitHub、GitLab和Gitee等流行的代码托管平台,以及如何在这些平台上注册账号、创建和管理仓库。最后,文章还提供了如何在IntelliJ IDEA中配置和使用Git的具体步骤。
49 1
|
3月前
|
存储 Linux 开发工具
掌握版本控制的艺术:Git 技巧深度解析
在软件开发中,版本控制对于代码管理和团队协作至关重要。Git 作为最流行的分布式版本控制系统,凭借其强大的功能和灵活性成为开发者必备工具。本文深入探讨 Git 的高级技巧和最佳实践,包括交互式暂存、撤销提交、合并冲突处理等,帮助你更高效地使用 Git。通过遵循清晰的提交信息、保持提交原子性、利用分支开发等最佳实践,开发者可以更好地管理代码库,提升协作效率。
|
2月前
|
开发工具 git
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
39 1
|
7月前
|
项目管理 开发工具 git
版本控制与源代码管理:在 Visual Basic 项目中使用 Git
【4月更文挑战第27天】本文介绍了在Visual Basic项目中使用Git进行版本控制和源代码管理的重要性。Git作为一个流行的分布式版本控制系统,具备分布式架构、高效性能和强大分支管理等特点。在项目中,需先安装Git,然后初始化仓库、添加文件和提交更改。常用操作包括查看状态、日志、创建及切换分支和合并分支。团队协作时,借助远程仓库和推送拉取命令实现代码共享。虽然Git有学习曲线,但其优势在于强大的功能、灵活性和社区支持,能提升开发效率和代码质量。通过学习和实践,开发者可充分利用Git优化协作和项目管理。
79 1
|
2月前
|
存储 开发工具 C#
Git Extensions:一个.NET开源的 Git 图形用户界面(GUI)工具
Git Extensions:一个.NET开源的 Git 图形用户界面(GUI)工具
123 0
|
3月前
|
开发工具 git 开发者
掌握版本控制的艺术:Git 与 GitHub 的高效使用指南
在软件开发中,版本控制对于代码管理和团队协作至关重要。本文详细介绍了 Git 的核心概念与命令,包括初始化、创建仓库、文件跟踪、分支管理和远程仓库操作。同时,探讨了如何利用 GitHub 进行项目组织、代码审查及自动化工作流。通过遵循最佳实践,如频繁提交、清晰的信息记录和合理使用分支,开发者可以提升工作效率和团队协作能力,确保项目的持续成功。
|
3月前
|
图形学 开发工具 git
Unity与版本控制:游戏开发团队如何利用Git打造高效协作流程,实现代码管理的最佳实践指南
【8月更文挑战第31天】版本控制在软件开发中至关重要,尤其在Unity游戏开发中,能提升团队协作效率并避免错误。本文介绍如何在Unity项目中应用版本控制的最佳实践,包括选择Git、配置项目以排除不必要的文件、组织项目结构、避免冲突、规范提交信息以及使用分支管理开发流程,从而提高代码质量和团队协作效率。
287 1