首页 > 其他分享 >代码管理工具介绍——Git与GitHub

代码管理工具介绍——Git与GitHub

时间:2024-05-22 15:58:35浏览次数:21  
标签:Git 仓库 GitHub 代码 管理工具 git 分支

Git

  1. 简介
  • 什么是git

Git是一个开源的分布式版本控制系统,它的用途与SVN, CVS等版本控制系统一样,可以对文件进行版本管理(控制的对象是开发的项目代码)。Git是目前主流的版本控制系统,很多软件项目都会用它作为源代码管理工具。

代码开发时间轴:需求1 => 版本库1 ==> 需求2 => 版本库2 => 版本库3(版本库1) => 版本库4(版本库2)
让我们可以通过git回到某个版本

  • git的作用
    帮助开发者合并开发的代码,协同开发(代码管理,类似文件管理)
    如果出现冲突代码的合并,会提示后提交合并代码的开发者,让其解决冲突
    代码版本管理
  1. 分支管理
    Git中比较最重要的一点就是分支的概念,有了分支就有了合并和衍合的操作,「合并」和「衍合」能够「有效的对代码版本的管理」。

Git的初始化中有一条默认的主分支叫做master,每一次的提交都会串成一条时间线,这就是一条分支,当前分支由HEAD指针指向:

当每次发生代码提交的时候,当前指向就会向前形成一个新的版本,假如再创建一个新的分支bran,并且当前的提交指向新的分支,这样新的分支随着时间的推移就会形成许多版本,当新分支开发完后,提交仓库,并合并到主干master,最后删除bran分支,这样就完成了一次个人的开发。
3. 操作介绍

  • 本地仓库操作
    本地仓库常用命令如下:

git status 查看文件状态
git add 将文件的修改加入暂存区
git reset 将暂存区的文件取消暂存或者是切换到指定版本
git commit 将暂存区的文件修改提交到版本库
git log 查看日志

  • 远程仓库操作
    (1)git remote 查看远程仓库

(2)git remote add 添加远程仓库
添加远程仓库,运行 git remote add < shortname > < url > 添加一个新的远程 Git 仓库,同时指定一个可以引用的简写。
(3)git clone 从远程仓库克隆
如果你想获得一份已经存在了的 Git 远程仓库的拷贝,这时就要用到 git clone 命令。 Git 克隆的是该 Git 仓库服务器上的几乎所有数据(包括日志信息、历史记录等),而不仅仅是复制工作所需要的文件。
克隆仓库的命令格式是: git clone [url]
(3)git pull 从远程仓库拉取
git pull 命令的作用是从远程仓库获取最新版本并合并到本地仓库,命令格式:git pull [short-name] [branch-name]

  • 分支操作
    分支是Git 使用过程中非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。

同一个仓库可以有多个分支,各个分支相互独立,互不干扰。

通过git init 命令创建本地仓库时默认会创建一个master分支。

(1)git branch 查看分支

git branch 列出所有本地分支

git branch -r 列出所有远程分支

git branch -a 列出所有本地分支和远程分支

(2)git branch [name] 创建分支

创建分支命令格式: git branch [name]
(3) git checkout [name] 切换分支
切换分支命令格式:git checkout [name]

(4) git push [ shortName ] [name] 推送至远程仓库分支
推送至远程仓库分支命令格式: git push [ shortName ] [name]
(5) git merge [name] 合并分支
合并分支命令格式: git merge [name]

GitHub

  1. 简介
    GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。GitHub拥有1亿以上的开发人员,400万以上组织机构和3.3亿以上资料库。
    官网首页:
  2. 特点
    从代码自动化到云:使用GitHub Actions通过GitHub Packages和内置CI/CD更快地循环生产代码并简化工作流。
    自动化工作流:在管理代码的同一个位置以所需方式生成、测试、部署和运行CI/CD。从任何GitHub事件到任何可用API触发Actions。使用所选语言生成Actions,或从社区创建的数千个工作流和Actions中进行选择。
    带有代码的家庭包:使用Actions将新的包版本自动发布到GitHub Packages。在CI/CD工作流中安装托管在GitHub Packages或首选包注册表上的包和映像。它对于开放源代码始终免费,Actions内的数据传输对所有人都无限制。
    共同保护软件安全:GitHub在保护全球代码安全方面扮演着重要的角色-开发人员、维护人员、研究人员和安全团队。在GitHub上,各地的开发团队都可以协同工作,以保护全球软件供应链的安全,从分支到完成。
    获取有关代码中漏洞的警报:GitHub持续扫描常用语言的安全建议。此外,此功能还会向受影响的存储库的维护人员发送安全警报,并提供详细信息,以便他们能够修正风险。
    自动更新漏洞:GitHub监视项目依赖项,并自动打开拉取请求,以将依赖项更新为可解决已知漏洞的最低版本。
    查找其他工具忽略的漏洞:CodeQL是行业领先的语义代码分析引擎。GitHub的革命性方法将代码视为数据,以更快地识别安全漏洞。
    消除变体:永远不会再犯相同的错误。主动漏洞扫描可防止漏洞进入生产环境。
    确保令牌安全:意外地将令牌提交到公共存储库,在20家服务提供商的支持下,GitHub会采取措施确保安全。
  3. 创建仓库
    在完成注册和登录等操作之后,即可进行仓库的创建
  • 设置仓库信息
  • 创建成功

在创建完成自己的库之后,下面就要让自己的电脑克隆一个自己所创建的库,方面自己电脑上的代码同步到GitHub你所创建的库当中。为了实现,就需要安装一个软件,Git Bash。
git bash是Windows下的命令行工具。
基于msys GNU环境,有git分布式版本控制工具。
主要用于git版本控制,上传下载项目代码。
之后就可以通过git将代码上传到远程仓库,从而对代码进行管理。

标签:Git,仓库,GitHub,代码,管理工具,git,分支
From: https://www.cnblogs.com/muovo/p/18206457

相关文章

  • 源代码管理工具——Github
    目录:Github简介1.Github基本功能2.Github文件的相关操作3.Github的创建与应用Github特点Github与TFS的区别一、Github简介GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管,故名GitHub。GitHub于2008年4月10日......
  • git码云安装及使用菜鸟教程
    1.下载Windows本地码云https://mirrors.huaweicloud.com/git-for-windows/(华为镜像下载),选择合适的版本下载,此处下载速度要快些2.登录码云官网https://gitee.com/,并设置对应的仓库: 2.Windows本地安装后,进入对应目录,右键,会出现Opengitbashhere,按码云仓库的提示进行设置,如下......
  • Github:开源世界的支柱
            GitHub是一个基于Git的版本控制和协作平台,于2008年推出。它不仅提供了强大的源代码管理功能,还集成了丰富的协作工具,如问题跟踪、代码评审、项目管理等。无论是个人项目还是大型企业级项目,GitHub都能提供高效的解决方案。什么是Github?        在现代软......
  • 主流源代码管理工具:Team Foundation Server(TFS)
    在软件开发领域,源代码管理工具的重要性不言而喻。它们不仅帮助开发者有效地管理代码,还促进团队协作,确保项目的顺利进行。在众多源代码管理工具中,TeamFoundationServer(TFS)凭借其独特的功能和优势,赢得了众多团队的青睐。TFS概述TFS是Microsoft开发的一款源代码管理和项目管理工......
  • Unity制作一个协程管理工具
    IEnumeratorToolusingSystem;usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassIEnumeratorTool:MonoBehaviour{///<summary>///压入的action任务///</summary>publicclassActionTask......
  • git remote add origin <http地址>
     使用“gitremoteaddorigin”指令,可以轻松地将本地项目连接到远程Git仓库.gitremoteaddorigin<远程Git仓库地址>1.更改默认的远程仓库在项目中可能存在多个远程仓库,如果你想更改默认仓库,可以使用如下指令:   gitremoteset-urlorigin<新的远程Git仓库地址>2.查......
  • git分支管理
    最近新建了好几个分支,记录一下分支管理的常用命令,之后就省的百度了内容主要参考这篇文章Git分支教程:详解分支创建、合并、删除等操作-知乎(zhihu.com)创建一个新的分支:gitbranchbranchname查看所有本地分支:gitbranch切换到相应分支:gitcheckoutbranchname创建分支的同......
  • Git:warning: CALF wilL be replaced by LF in xxxx 问题解决
    warning:CALFwilLbereplacedbyLFinxxxx问题解决办法出现这个问题的原因是像缓存区中提交文件时出现的 原因:windows中的换行符为CRLF,而在Linux下的换行符为LF,所以在执行add.时出现提示也就是,工作区的文件都应该用CRLF来换行。如果 改动文件时引入了LF,提......
  • git:Unable to negotiate问题解决
    场景说明:安装了Gitblit(自架的代码仓库服务)发现部分电脑无法推代码,报错误如下:Unabletonegotiatewith****port22:nomatchinghostkeytypefound.Theiroffer:ssh-rsa并排队了账户权限问题。解决方案:1.打开问题电脑的系统盘的当前登陆用户文件夹('C:\Users\你当前的......
  • 工程目录下.git目录过大文件清理
    1.查看当前5个大文件gitrev-list--objects--all|grep"$(gitverify-pack-v.git/objects/pack/*.idx|sort-k3-n|tail-5|awk'{print$1}')"2.一个一个将大文件从提交记录中移除gitfilter-branch--force--index-filter'gitrm-rf--cached--ignore-u......