文章目录

  • 1.git操作
  • 2.git简介
  • 3.git 安装
  • 4.git使用
    • 1.git 初始化
    • 2.git设置用户信息
    • 3.git 项目的拉取
      • 1.创建仓库
      • 2.本地初始化
      • 3.查看当前是否存在自己的账号信息并配置(包含步骤4)
      • 4.基础配置
      • 5.初始化内容
      • 6.开始引入自己的项目的地址
      • 7.更新操作
      • 8.git 文件的添加 保存和推送到github
      • 9.git 文件的修改删除推送github
      • 10.git push操作每次都需要输入账号密码 的解决办法
  • 5.总结
    • 至此git的仓库创建,仓库拉取到本地,文件的添加修改删除 提交已经完成。其中遇到的各类问题也一一做了整理规划

1.git操作

  • 版本控制

    ​ 什么是版本控制?我们为什么要关心它呢?版本控制是一种记录一个或若干文 件内容变化,以便将来查阅特定版本修订情况的系统 为什么要使用版本控制?软件开发中采用版本控制系统是个明智的选择。 有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某 个时间点的状态。就算你乱来一气把整个项目中的文件改的改删的删,你也照样可以 轻松恢复到原先的样子。但额外增加的工作量却微乎其微。 你可以比较文件的变化细节,查出最后是谁修改了哪个地方,从而找出导致怪异 问题出现的原因,又是谁在何时报告了某个功能缺陷等等。

  • 集中化的版本控制系统

​ 集中化的版本控制系统诸如 CVS,svn 以及 Perforce 等,都有一个单一的集 中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到 这台服务器,取出最新的文件或者提交更新。多年以来,这已成为版本控制系统的 标准做法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3N91NVg8-1613530352926)(G:\GG_Save\git\git001.png)]

这种做法带来了许多好处,现在,每个人都可以在一定程度上看到项目中的其 他人正在做些什么。而管理员也可以轻松掌控每个开发者的权限,并且管理一个集 中化的版本控制系统; 要远比在各个客户端上维护本地数据库来得轻松容易 事分两面,有好有坏。这么做最显而易见的缺点是中央服务器的单点故障。 如果服务器宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同 工作。 (并不是说服务器故障了就没有办法写代码了,只是在服务器故障的情况下,编写的 代码是没有办法得到保障的.试想 svn 中央服务器挂机一天.你还拼命写了一天代 码,其中 12 点之前的代码都是高质量可靠的,而且有很多闪光点.而 12 点之后的代 码由于你想尝试一个比较大胆的想法,将代码改的面目全非了.这样下来你 12 点之 前做的工作也都白费了 有记录的版本只能是 svn 服务器挂掉时保存的版本!) 要是中央服务器的磁盘发生故障,碰巧没做备份,或者备份不够及时,就会 有丢失数据的风险。最坏的情况是彻底丢失整个项目的所有历史更改记录,而被 客户端偶然提取出来的保存在本地的某些快照数据就成了恢复数据的希望。但这 样的话依然是个问题,你不能保证所有的数据都已经有人事先完整提取出来过。 只要整个项目的历史记录被保存在单一位置,就有丢失所有历史更新记录的风险。

  • 分布式的版本控制系统

    ​ 于是分布式版本控制系统面世了。在这类系统中,像 Git,BitKeeper 等,客 户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来。这么一 来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本 地仓库恢复。因为每一次的提取操作,实际上都是一次对代码仓库的完整备份

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cPuE5Rak-1613530352954)(G:\GG_Save\git\git002.png)]

    ​ 更进一步,许多这类系统都可以指定和若干不同的远端代码仓库进行交 互。籍此,你就可以在同一个项目中分别和不同工作小组的人相互协作。 分布式的版本控制系统在管理项目时 存放的不是项目版本与版本之间 的差异.它存的是索引(所需磁盘空间很少 所以每个客户端都可以放下整个 项目的历史记录) 分布式的版本控制系统出现之后,解决了集中式版本控制系统的缺陷: 1. 断网的情况下也可以进行开发(因为版本控制是在本地进行的) 2. 使用 github 进行团队协作,哪怕 github 挂了 每个客户端保存 的也都是整个完整的项目(包含历史记录的!!!)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LF3KpP3l-1613530352963)(G:\GG_Save\git\git004.png)]

2.git简介

Git 是目前世界上最先进的分布式版本控制系统。同生活中的许多伟大事件一样,Git
诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众广的参与者。绝
大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002
年间)。到 2002 年,整个项目组开始启用分布式版本控制系统 BitKeeper 来管理和维
护代码。
到了 2005 年,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结
束,他们收回了免费使用 BitKeeper 的权力。这就迫使 Linux 开源社区(特别是 Linux
的缔造者 Linus Torvalds )不得不吸取教训,只有开发一套属于自己的版本控制系统才
不至于重蹈覆辙。他们对新的系统制订了若干目标:
分支切换速度快 容量小(压缩) 简单的设计 完全分布式
对非线性开发模式的强力支持(允许上千个并行开发的分支)
有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)
自诞生于 2005 年以来,Git 日臻成熟完善,在高度易用的同时,仍然保留着初期设
定的目标。它的速度飞快,极其适合管理大项目,它还有着令人难以置信的非线性分支管理
系统可以应付各种复杂的项目开发需求。

3.git 安装

  1. windows 安装

    git 地址 : https://git-scm.com/download/win 下载完安装包之后,双击 exe 安装包,

    可以看到如下图窗口界面,一直点击next 下一步

  2. mac 安装

    git 地址 :https://git-scm.com/download/mac 下载下来之后可以看到一个 dmg 文件,双击打开 压缩文件,可以看到里面有 一个文件, 再次双击 pkg 文件,就可以进行安装,然后按照引导一直点击继续 按钮就可以完成安装了.

  3. 检查是否安装成功

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bOnTITGV-1613530352978)(G:\GG_Save\git\git003.png)]

    如果弹出版本信息表示安装成功了。

    git --version
    

4.git使用

1.git 初始化

​ 一般在新的系统上,我们都需要先配置下自己的 Git 工作环境。配置工作只需一 次,以后升级时还会沿用现在的配置。当然,如果需要,你随时可以用相同的命令修 改已有的配置。 Git 提供了一个叫做 git config 的命令来配置或读取相应的工作环境变量而正是由 这些环境变量,决定了 Git 在各个环节的具体工作方式和行为。这些变量可以存放 在以下三个不同的地方:

​ /etc/gitconfig 文件:系统中对所有用户都普遍适用的配置。若使用 gitconfig 时用 --system 选项,读写的就是这个文件。 (全局操作系统)

​ ~/.gitconfig 文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,读写的就是这个文件。(当前用户)

​ .git/config 文件:当前项目的 Git 目录中的配置文件(也就是工作目录 中的 .git/config 文件)这里的配置仅仅针对当前项目有效。 每一个级别的配置都会覆盖上层的相同配置(当前项目 优先级最高)

2.git设置用户信息

第一个要配置的是你个人的用户名称和电子邮件地址。这两条配置很重要,每
次 Git 提交时都会引用这两条信息,说明是谁提交了更新,所以会随更新内容一
起被永久纳入历史记录:
$ git config --global user.name "mingmadahuofo"
$ git config --global user.email 3200298158@qq.com
要检查已有的配置信息,可以使用 git config --list 命令
删除配置信息 git config --global --unset user.email

git 区域

工作业务操作流程
1工作区域本地项目代码区域 -- 沙箱环境(随便修改删除)
2暂存区域暂时存放项目代码
3版本库实际版本项目代码
git 本质是个数据库 键值对方式

git 对象


git 对象树对象
提交对象

3.git 项目的拉取

​ 这个情况一般出现在进入公司后,会由主管给你创建好git项目仓库,然后把地址给你。让你的项目进行提交。或者 是进行了一半的公司项目,把地址给你让你接手别人的项目。让你提交代码。

​ 这里都会给出教程

1.创建仓库

​ 登录github 后点击左上角的github小猫标志

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BNUAGYHW-1613530352995)(G:\GG_Save\git\git000.png)]

​ 然后点击new

​ 然后输入仓库名称

​ 选择增加md文件

​ 选择标准规范

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QrOjS6sv-1613530353009)(G:\GG_Save\git\git006.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KRTbsQXR-1613530353014)(G:\GG_Save\git\git007.png)]

​ 创建完成之后

​ [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e8wEqDpF-1613530353019)(G:\GG_Save\git\git008.png)]

2.本地初始化

​ 至此我们上一步模拟了 公司创建账号地址仓库后会给我们一个地址,这个就是我们以后的代码提交的仓库了。一般情况下,这个是公司领导给的。

​ 例如:我们上面的地址为:https://github.com/mingmadahuofo/GG_web

​ 这个就是我们的项目地址

​ 拿到准备条件后我们开始本地初始化

​ 创建文件夹 在g盘创建 G:\GG_Save

​ 在这个文件夹中右键选择git bash here 打开 git 命令窗口

​ 然后开始初始化配置自己的项目文件

3.查看当前是否存在自己的账号信息并配置(包含步骤4)

要检查已有的配置信息,可以使用$  git config --list 命令
删除配置信息$  git config --global --unset user.email
git config --global user.name "你的名字或昵称"git config --global user.email "你的邮箱"记得必须带  ""git config --global user.name "mingmadahuofo"git config --global user.email "3200298158@qq.com"
3200298158@qq.com

4.基础配置

​ 如上图

5.初始化内容

git init (必须执行)
如果是github 上面没有这个仓库 需要初始化,如果是已经建好的仓库
现在不需要这一步,直接进行第6步骤

初始化完毕会出现.git 的文件

6.开始引入自己的项目的地址

 git remote add origin <你的项目地址> //注:项目地址形式为:https://gitee.com/xxx/xxx.git或者 git@gitee.com:xxx/xxx.git
或者
git clone <项目地址>我们的完整命令
git clone https://github.com/mingmadahuofo/GG_web

可以看到,我们已经克隆下来项目了 。 然后把我们创建好的文件夹 放进去

把demo 和pdf 和tymd都放进去

然后在创建index2.html 文件进去

7.更新操作

​ 我们在在当前的文件夹下进行新建 index2.html

8.git 文件的添加 保存和推送到github

​ 从gitee 上面进行更新的操作, 这个操作一般是上班的第一件事情,以保持 项目的最新同步

# 刚才下载项目的时候是最新的了,从服务器下更新项目,因为已经clone过,所以不需要再更新
git pull origin master首先使用git status 命令查看当前项目修改情况
然后使用 git add <file> 进行添加操作 这个file 指的是文件的路径
使用 git commit -m "对更新的说明" 添加注释
推送到远端仓库码云上,项目大的话,时间会久些
git push origin master

我们看下现在我们的项目文件

然后我们通过命令进入当前文件夹


G:\GG_Save\GG_web>git status
On branch main
Your branch is up to date with 'origin/main'.Untracked files:(use "git add <file>..." to include in what will be committed)index2.htmlnothing added to commit but untracked files present (use "git add" to tracG:\GG_Save\GG_web>git add index2.htmlG:\GG_Save\GG_web>git commit -m"index2"
[main 91719f1] index21 file changed, 0 insertions(+), 0 deletions(-)create mode 100644 index2.htmlG:\GG_Save\GG_web>git push origin master
error: src refspec master does not match any
error: failed to push some refs to 'https://github.com/mingmadahuofo/GG_weG:\GG_Save\GG_web>git push origin main
fatal: TaskCanceledException encountered.已取消一个任务。
Username for 'https://github.com': 3200298158@qq.com
Password for 'https://3200298158@qq.com@github.com':(输入密码的地方)
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 304 bytes | 33.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/mingmadahuofo/GG_webe01694c..91719f1  main -> mainG:\GG_Save\GG_web>

留心,在这里,我们遇到了2个问题:

第一 我们进行提交项目的时候

git push origin master

提交失败了,原因是 自2020年10月1日起,在GitHub平台上创建的所有源代码存储库都将默认命名为 main ,而非原本的 master 。以前创建的仓库还是master

所以我们的提交代码变为

git push origin main

第二 git操作是出现Username for ‘https://github.com’:的验证失败问题

Username for 'https://github.com': 3200298158@qq.com  (这里填写github的注册邮箱地址)
Password for 'https://3200298158@qq.com@github.com':(输入注册密码的地方,是黑色不显示输入)

然后我们

9.git 文件的修改删除推送github

把index2.html更改为index3.html 然后推送

G:\GG_Save\GG_web>git status
On branch main
Your branch is up to date with 'origin/main'.Changes not staged for commit:(use "git add/rm <file>..." to update what will be committed)(use "git restore <file>..." to discard changes in working directory)deleted:    index2.htmlUntracked files:(use "git add <file>..." to include in what will be committed)index3.htmlno changes added to commit (use "git add" and/or "git commit -a")G:\GG_Save\GG_web>git rm index2.html
rm 'index2.html'G:\GG_Save\GG_web>git add index3.htmlG:\GG_Save\GG_web>git commit -m "update 2 or 3"
[main cc7b344] update 2 or 31 file changed, 0 insertions(+), 0 deletions(-)rename index2.html => index3.html (100%)G:\GG_Save\GG_web>git push origin main
Logon failed, use ctrl+c to cancel basic credential prompt.
Username for 'https://github.com': 3200298158@qq.com
Password for 'https://3200298158@qq.com@github.com':
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 246 bytes | 41.00 KiB/s, done.
Total 2 (delta 1), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/mingmadahuofo/GG_web91719f1..cc7b344  main -> mainG:\GG_Save\GG_web>

然后github的文件修改成功

10.git push操作每次都需要输入账号密码 的解决办法

git push操作每次都需要输入账号密码解决方案第一步:
执行如下命令
git config --global credential.helper store
会在你本地生成一个文本,上边记录你的账号和密码。当然这些你可以不用关心。
第二步
git push
这次同样需要输入账号密码此次完成之后,以后都不用重复输入了G:\GG_Save\GG_web>git rm index0.html
rm 'index0.html'G:\GG_Save\GG_web>git commit -m"del 0 "
[main 54b532e] del 01 file changed, 0 insertions(+), 0 deletions(-)delete mode 100644 index0.htmlG:\GG_Save\GG_web>git push origin main
fatal: TaskCanceledException encountered.已取消一个任务。
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 212 bytes | 26.00 KiB/s, done.
Total 2 (delta 1), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/mingmadahuofo/GG_web31da0a1..54b532e  main -> mainG:\GG_Save\GG_web>

11.仓库中提交文件夹

在仓库中的文件夹中创建文件,提交文件就会把文件夹提交上去

5.总结

至此git的仓库创建,仓库拉取到本地,文件的添加修改删除 提交已经完成。其中遇到的各类问题也一一做了整理规划

essing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 212 bytes | 26.00 KiB/s, done.
Total 2 (delta 1), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/mingmadahuofo/GG_web
31da0a1…54b532e main -> main

G:\GG_Save\GG_web>


11.仓库中提交文件夹在仓库中的文件夹中创建文件,提交文件就会把文件夹提交上去# 5.总结### 至此git的仓库创建,仓库拉取到本地,文件的添加修改删除 提交已经完成。其中遇到的各类问题也一一做了整理规划

2021github仓库操作流程手册指南相关推荐

  1. Gentoo man手册指南

    转载:http://www.gentoo.org/doc/zh_cn/man-guide.xml#doc_chap2 http://blog.csdn.net/andyelvis/article/de ...

  2. 编写用户帮助/操作手册指南

    背景: 用户操作手册是一份指导用户使用产品或服务的重要手册. 一个新系统,需要写用户操作手册,该从何下笔?本篇是一篇教你编写用户帮助/操作手册的指南- 首先,先来看一个反例 : 这个是我入职的时候,我 ...

  3. php新人怎么领带,职场穿搭礼仪手册指南

    职场穿搭礼仪手册指南 "什么场合穿什么衣服,什么职业穿什么样的衣服"这是我进入职场学会的第一课,也是个人形象管理中最重要的一个原则.律师给大众的印象一直是严谨.这种严谨是由内向外的 ...

  4. gitee新建仓库操作流程于常用命令

    一.操作流程 第一步: 点击右上角 + 新建仓库 --> 填写仓库名称.仓库介绍.私有 --> 创建 --> 初始化 readme 文件 第二步: 在自己文件夹(用来存放gitee创 ...

  5. 搭建本地GitLab仓库排坑指南

    关于GitLab GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务.安装方法是参考GitLab在GitHub上的Wiki页面. 2022年2 ...

  6. prototype使用学习手册指南之Position.js

    Position是prototype中定义的一个对象,提供了操作DOM中与位置相关的方法,要很好的理解元素在页面中的位置,具体代码如下,按照代码说说,其中英文是作者的注释,中文的才是偶的说明或翻译英文 ...

  7. Git仓库合并分支指南-GitBash指令合并-简单易懂

    作为一名前端开发,不会git无异于自断手脚,那么请用心阅读下文,相信可以帮助到你. 首先我们要了解git指令分别是什么作用 git命令 ssh - keygen 配置密钥 git add 具体路径 指 ...

  8. 【git教程】git安装、本地仓库与远程仓库使用详细指南

    git版本控制工具 下载地址:https://www.git-scm.com/download/win 选择对应版本的工具,下载后是一个exe执行文件: 本文使用到的git命令 命令 作用 git a ...

  9. Luat模块应用手册-指南-Luat二次开发教程指南-功能开发教程-长连接超低功耗方案

    目录 简介 什么是超低功耗 能降低多少功耗 什么时候用 哪个版本才支持 实现方法 主要命令 示例 实现原理 两种心跳包 实现代码 常见问题 相关资料以及购买链接 相关开发板购买链接 简介 什么是超低功 ...

最新文章

  1. c语言包括在方括号中的序号称为,自考《高级语言程序设计》知识点总结(四)...
  2. C语言实验——最小公倍数和最大公约数_JAVA
  3. 归纳:数据库设计的六个阶段详解(有这一篇就够了)
  4. tf13: 简单聊天机器人
  5. Boost:bimap双图信息的测试程序
  6. plsql强制关闭后再打开提示已停止工作的解决办法
  7. [转]深入理解Java之线程池
  8. ASP.NET 5系列教程
  9. 预处理函数在app和蓝图级别的不同使用
  10. python while语句写法
  11. C盘没W ndows64,win10如何深度清理c盘
  12. vue商城秒杀倒计时功能
  13. ctfmon是什么启动项_win10系统启动项中没有ctfmon进程的图文方法
  14. try-catch-finally中的4个大坑,老程序员也搞不定
  15. python3分解质因数_python3 分解质因数
  16. 利用Python制作本地Excel的查询与生成的程序
  17. 企业微信 php sdk,thinkphp5.0集成企业微信SDK
  18. 为什么手机浏览器打不开html文件,win7浏览器打不开本地html文件的原因及解决方法...
  19. STM32并口驱动AD9854——HAL库
  20. 重装Office后打开Powerpoint和excel提示找不到VCRUNTIME140_1.dll的解决办法(亲测成功,简单有效)

热门文章

  1. Dwarves(拓扑排序+字符串使用map量化表示)
  2. 男人常吃6种食物当心伤精少精
  3. of undifine报错
  4. linux软路由关闭超线程,结论 - Linux 软路由性能测试及分析[图文]_Linux教程_Linux公社-Linux系统门户网站...
  5. Web在线客服系统源码
  6. 数学建模方法-灰色预测法
  7. 信号的用法,signal函数、sigaction函数及信号集(sigemptyset,sigaddset)操作函数
  8. 主机/虚拟机/开发板三者互通
  9. 4.3 脉冲响应不变法
  10. zkSNARKs(零知识证明)简述