【教程】Github快速学习

2023-11-10

备注

2023/04/06 星期四
最近要做毕业设计工程量比较大,准备使用GitHub做项目管理工具,顺便详细总结一下Git和GitHub

一、Git基础

1.安装

Win和Linux都可以在git官网下载安装包,然后一直默认下一步安装即可。
官方提供了win的包管理工具的下载方式(但是并不好用)

winget install --id Git.Git -e --source winget

常见的的Linux版本也都提供了各自得包管理工具下载方式

# debian
sudo apt install git
# centos
sudo yum install git

2.git原理

git为了解决版本控制的问题提供了四个不同的区域,分别是工作目录、暂存区、资源库和远程仓库,不同的层级有不同的命令:

命令 作用
git add [文件] 将工作目录的文件添加到暂存区
git checkout [文件] 将暂存区的文件取出到工作目录
git commit -m [提交信息] 将暂存区的文件提交到资源库
git reset [文件] 将资源库的文件回滚到暂存区
git push 将资源库的文件推送到远程仓库
git pull[文件] 将远程仓库的文件拉取到资源库

3.基本配置

命令 作用
git config -l 查看Git的配置信息
git config --global user.name "[用户名]" 设置用户名
git config --global user.email "[邮箱地址]" 设置邮箱
git config --global color.ui auto 启用彩色输出
git init 将当前目录设置为Git项目
git clone [项目的Git地址] 从远程克隆一个项目
git remote add origin [项目的Git地址] 将本地项目与远程仓库连接

4.Gitignore

git为我们提供了编写ignore文件的方式来实现忽略一部分不想加入git版本控制的文件,在主目录下建立.gitignore文件,并按规则编写即可

符号 功能
# 注释符,忽略整个以#开头的行
* 通配符,任意个任意字符
? 通配符,任意一个字符
[字符] 可选的字符
{字符串} 可选的字符串
! 以!开头的文件将不会被忽略
[目录]/ 忽略目录中所有文件
\[目录] 只忽略目录中的文件,不忽略目录中的目录

二、Git分支

首先推荐一个模拟平台Learning Git Branching快速学习git的分支操作

1.基础命令

命令 作用
git branch [分支名称] 创建一个新分支
git chackout [分支名称] 切换到目标分支上进行操作
git merge [分支名称] 将目标分支上的内容合并到当前分支
git rebase [分支名称] 将当前分支挂到目标分支上

三、学习Github:Github Docs官方文档 -> Github漫游指南 -> 开源指北

1.远程连接

当我们注册并登录github之后,我们需要先将本地的git连接到github账号。
进入到git_bash中使用以命令创建密钥

ssh-keygen.exe -t rsa -C [邮箱]

一般只需要一直回车就可以,然后找到对应的公钥所在位置
public
用文本编辑器打开,并且复制到GitHub的setting中的sshkey中
sshkey
确认后就完成了本地和GitHub的连接

四、Git进阶:Git 官方文档

五、Github进阶:Github Docs官方文档

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【教程】Github快速学习 的相关文章

  • 如何 git grep 仅一组文件扩展名

    如何执行 git grep 并将检查的文件限制为一组文件 我希望能够 grep cpp 和 h 文件的内容来查找 MyFunc 例如 git grep MyFunc hc 但是 这也匹配 c 文件和 cs 文件 Use git grep M
  • 为什么我无法创建/签出该分支?

    我正在尝试创建本地 Git 分支 但它不起作用 以下是我正在使用的命令 tablet edit11 git checkout b edit 11 Switched to a new branch edit 11 tablet edit11
  • 在 github 上下载 ZIP 时没有 .xcodeproj 文件

    我正在尝试将我的 GitHub 项目放入 Xcode 中 当我从 GitHub 下载时 zip 文件不包含任何 xcodeproj 文件 另外 即使我在 xcode 上登录 GitHub 克隆 下载时也没有 在 Xcode 中打开 选项 如
  • 如何正确使用“mvn release:prepare”?

    我尝试了这个命令 用dryrun在我的 Maven 项目上进行测试 mvn release clean release prepare DdryRun true DgenerateBackupPoms false Dtag solocal
  • Git:发送电子邮件而不提交

    我有一个项目 我做了更改 并想使用 git send email 功能将它们发送给另一个用户 我发现它可以通过发送补丁来工作 由git format patch每次提交 是否可以只发送diff的 我不想先提交 然后发送补丁 是否有gitfo
  • 如何制作 github PR 请求审查整个文件?

    有这个问题 https github com isaacs github issues 284这是相关的 允许对更改集之外的部分代码进行注释 我只是想知道是否有人有聪明的解决方法或流程来实现类似的 也许更简单的事情 因此 我有一组不同的文件
  • .gitconfig 别名函数调用

    我在 gitconfig 中定义了以下别名 alias teamcity tc tc是我在我的中定义的一个shell函数 bashrc文件 由于某种原因 我收到以下错误 aafghani 03 git workday amirafghani
  • Git - 创建拉取请求而不分叉

    使用 git 已经有一段时间了 关于 git pull request 有很多教程和解释 其动机是什么等等 我遇到两种情况 1 分叉 git 仓库 我查看了一些公共 git 存储库并决定我想要做出贡献 所以我 通过以下方式创建重复的存储库F
  • 在 Windows 7 上的 Sourcetree 中比较 Word docx 文件

    我一直在尝试获取在 Windows 7 上的 Sourcetree 中工作的 Word docx 文件的文本差异 我已按照此处的说明进行操作将 Microsoft Word 与 git 结合使用 http blog martinfenner
  • 如何克隆特定的 Git 标签

    From git clone 1 手册页 http git scm com docs git clone branch还可以在结果存储库中的该提交处获取标签并分离 HEAD 我试过 git clone branch
  • 当 .gitattributes 中的 EOL 设置为 CRLF 时,Git diff 认为行结尾为 LF

    当我恢复对带有 Windows 行结尾的文件的更改并且 gitattributes 将 EOL 定义为 CRLF 时 git 认为行结尾已更改为 LR 即使十六进制编辑器显示 CRLF 仅当 gitattributes 定义 EOL 字符时
  • git 提交错误:检测到大文件

    您好 我正在为 ios 8 1 开发一个应用程序 xcode 我已经使用 googleMaps 框架来实现自动完成功能 当我尝试在 Git 中推送我的项目时 我收到大文件检测错误 后来尝试使用 git lfs 并跟踪 git 检测到的文件
  • Git 提交失败:“请使用 -m 或 -F 选项提供消息。”

    当我键入 git commit 命令来提交文件时 我收到以下错误消息 Microsoft Visual Studio 微软 找不到命令 错误 核心编辑器 Microsoft Visual Studio 存在问题 请使用 m 或 F 选项提供
  • 为所有子文件夹设置 git 配置值

    我知道可以设置每个存储库的配置来覆盖用户级配置 即 path to my repo gitconfig覆盖 gitconfig 是否可以设置 git 配置来覆盖给定文件夹的所有子文件夹的用户级设置 即 我有 topLevelFolder1
  • Git 到 TFS 源代码管理迁移

    我想看看 TFS 如何为我的命令工作 所以我想将我们当前的 GIT 存储库移动到 TFS 数据库 我们使用 GIT 来获得普遍的分支支持 因此我想使用 TFS 2010 来解决该问题 现在的问题是 如何将 GIT 存储库导出到 TFS 显然
  • 如何让 Aptana Studio 记住 git ssh 密码

    我找不到任何有关如何获得 Aptana Studio 的内置 git 支持来记住执行推 拉操作的 ssh 密码的指南 信息 有人有什么想法吗 Aptana Studio 实际上是内置的 GIT 程序 它将在 Windows 上的 C Use
  • git reflog 和 log 有什么区别?

    手册页说 log 显示提交日志 reflog 管理 reflog 信息 reflog 信息到底是什么 它有哪些日志没有的信息 日志看起来更详细 git log显示当前的 HEAD 及其祖先 也就是说 它打印提交 HEAD 指向的提交 然后打
  • 为什么 Git 无法将文件更改与修改后的父级/主控合并?

    我有一个文件 里面只有一行 我创建一个分支并向同一文件添加第二行 保存并提交到分支 我切换回主人 并向文件中添加不同的第二行 保存并提交给master 现在总共有 3 条独特的线路 如果我现在尝试将分支合并回主分支 则会遇到合并冲突 为什么
  • 仅使用 Git grep 的文件名

    我只想查看文本中包含特定单词的不同文件 current directory git grep word 显示文件中具有匹配单词的每一行 所以我尝试了这个 current directory git grep word files with
  • Git:从 master 以外的分支克隆

    我正在尝试从 Github 的存储库中提取数据 但我不想克隆主分支 我想克隆其他一些分支 当我尝试时git clone

随机推荐

  • Anaconda 添加清华镜像源

    在安装tensorflow时 不知道怎么了 一直安装不上去 所以重新配置了下镜像 安装环境 win10 anaconda3 5 删除之前的镜像源 恢复默认状态 conda config remove key channels 添加清华镜像源
  • vue页面的定时刷新

    在做项目时我们肯定会遇到要求该页面几分钟去定时刷新一下获取最新数据这样的情况 那么这个时候我们就要使用setInterval 了 那么我们应该把定时刷新放在什么位置什么时候触发什么时候清除呢 这就需要我们了解vue的生命周期 首先贴一张从官
  • [ Android实战 ] android query: BufferQueue has been abandoned 问题解决

    Android实战 android query BufferQueue has been abandoned 问题解决 背景 日志分析 参考资料 解决方案 源码分析 总结 尊重原创 转载请注明出处 背景 最近在我们的 Camera 应用上发
  • 网络攻击——CSRF攻击

    CSRF攻击 CSRF全称是跨站请求伪造 cross site request forgery CSRF伪装受信任用户 向第三方平台发送恶意请求 CRSF能做的事情包括利用你的身份发邮件 发短信 进行交易转账 甚至盗取账号信息 一个典型的C
  • mysql进阶优化篇04——深入JOIN语句的底层原理

    前 言 作者简介 半旧518 长跑型选手 立志坚持写10年博客 专注于java后端 专栏简介 mysql基础 进阶 主要讲解mysql数据库sql刷题 进阶知识 包括索引 数据库调优 分库分表等 文章简介 本文将介绍JOIN语句的底层原理
  • 2022-06-14 用crontab在linux下定期执行mysql的存储过程

    问题 我们程序有一个日志表 tx log 由于每天数据量增加巨大 所以要每天手动备份3天前的数据到别的表中 tx log ls 并将这些数据在日志表中删除 但有时总会忘记备份 所以想写一个定时器 每天下半夜1点定时执行 思想 1 在mysq
  • STM32Cube学习(2)——定时器中断

    0 引言 单片机 STM32F407ZGT6 仿真器 ST Link V2 开发环境 STM32CubeIDE 1 10 1 功能说明 采用定时器中断的方式 实现LED按照定时器频率闪烁 前情提要 STM32Cube学习 1 点灯 配置 参
  • 基于点云的三维重建_一分钟详解三维重建学习路线

    作者 庞巧遇 来源 公众号 3D视觉工坊 链接 一分钟详解三维重建学习路线 三维重建在计算机视觉中是十分重要的 其中涉及很多的技术内容 为了后来人能少走弯路 也为了对自己的知识框架系统总结 特记录自己的学习路线 1 什么是三维重建 三维重建
  • 决策树,信息熵,信息增益计算----机器学习

    决策树 decision tree 决策树简单介绍 信息量 信息熵 信息增益 决策树简单介绍 决策树是一种基于树状结构来做决策的 是一种常见的机器学习方法 主要做分类 也可以做回归 一棵决策树含有一个根结点 样本全集 若干个内部结点和若干个
  • MYSQL HTTP头部注入

    HTTP头部基础 Accept 浏览器能够处理的内容类型 Accept Charset 浏览器能够显示的字符集 Accept Encoding 浏览器能处理的压缩编码 Accept Language 浏览器当前设置的语言 Connectio
  • Hyper-V 的用途与安装

    什么是 Hyper V Hyper V是微软提出的一种系统管理程序虚拟化技术 能够实现桌面虚拟化 WSL2 和 WSA 与 Hyper V 的关系 Hyper V其实分两个部分 底层的虚拟机平台 上层的虚拟机管理软件 以前的Windows版
  • 2023华为OD机试真题Python实现【动态规划/找出重复代码】

    题目描述 小明负责维护项目下的代码 需要查找出重复代码 用以支撑后续的代码优化 请你帮助小明找出重复的代码 重复代码查找方法 以字符串形式给出两行代码 字符审长度1 lt length lt 100 由英文字母 数字和空格组成 找出两行代码
  • 两个日期选择器的联动

    让两个独立的日期选择器产生联动 我这里用的是elmentUI的 DatePicker日期选择器 效果展示 方案1
  • Linux下的dd命令

    简介 dd命令是Linux下的一个重要的磁盘操作命令 它的主要作用是备份和复制磁盘 dd的语法是 dd if 输入文件的名称 of 输出文件的名称 参数 值 if 输入文件的名称 指定输入文件的名称 可以是文件 设备 目录等 of 输出文件
  • 【满分】【华为OD机试真题2023B卷 JAVA&JS】流水线

    华为OD2023 B卷 机试题库全覆盖 刷题指南点这里 流水线 知识点数组队列编程基础 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 一个工厂有m条流水线 来并行完成n个独立的作业 该工厂设置了一个调度系统 在安排作业时
  • aso优化师是什么_aso是什么意思 aso优化师是啥

    aso是什么意思 aso优化师是啥 年已过完 要收心工作学习了 今天李鑫自媒体就从头过滤一下aso方面的知识 用文字总结表述出来 加深自己理解的同时也帮助一些新手小伙伴了解aso aso是什么意思 ASO是App store Optimiz
  • element 的 this.$message( ) 消息提示实现

    在vue项目中 直接通过js代码 this message 就可以调出消息提示组件 这是如何实现的呢 主要分为以下几步 1 用 Vue extend 创建组件的模板 构造函数 2 创建一个函数 在函数内部 实例化组件并进行挂载到相应元素上
  • 【开发记录01】开发环境副本/页的导入&带用户权限管理系统

    在蒋老师的指导下大概了解了 1 开发环境的数据导入 导出 共享组件的同步 因为应用程序277是应用程序100的子程序 所以共享组件必须和100保持一致 但是会出现一个小问题 在APEX开发过程中同时打开两个不同的应用程序 但是编辑过程中经常
  • CVE-2017-12149

    春秋云镜 CVE 2017 12149 JBoss反序列化漏洞 靶标介绍 2017年8月30日 厂商Redhat发布了一个JBOSSAS 5 x 的反序列化远程代码执行漏洞通告 该漏洞位于JBoss的HttpInvoker组件中的 Read
  • 【教程】Github快速学习

    教程 Github快速学习 备注 一 Git基础 1 安装 2 git原理 3 基本配置 4 Gitignore 二 Git分支 1 基础命令 三 学习Github Github Docs官方文档 gt Github漫游指南 gt 开源指北