赞
踩
该学习笔记是观看下方的bilibili视频教程所记笔记。
https://www.bilibili.com/video/BV1sJ411D7xN?p=16&spm_id_from=pageDriver
该学习笔记记录了我在Git指令上遇到的各种问题,以及Github加速问题。
上述大部分问题,都可以经过查阅博客、文章得以解决。
每个人遇到的问题不一定完全相同,方法仅供参考。
Git是分布式版本控制系统
Git是一个分布式版本控制系统,简单的说其就是一个软件, 用于记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的软件。
Github (https://www.github.com)是一个为用户提供Git服务的网站,简单说就是一个可以放代码的地方(不过可以放的当然不仅是代码)。Github 除了提供管理Git的web界面外,还提供了订阅、关注、讨论组、在线编辑器等中富的功能。Github 被称之为全球最大的基友网站。
①通过修改host文件登录(我已保存书签不知道能用多久)
GitHub 访问不了?教你几招轻松解决 - 知乎 (zhihu.com)
辅助工具:IP查询网站: IP地址查询 - 在线工具 (tool.lu)
②另一种IP查询方式: (5条消息) GitHub登录不上解决办法(绝对可行)_我在北国不背锅的博客-CSDN博客_git 登录不上
链接: [多个地点pinggithub.com]服务器-网站测速-站长工具 (chinaz.com)
【https://www.dogfight360.com/blog/686/】
【上述网站为一个修改host的软件,可以加速github社区10.27-18:34】
不推荐去官网下载(慢),下方链接是镜像下载地址
https://npm.taobao.org/mirrors/git-for-windows/
路径为纯英路径,配置默认即可(next→next→next→…)
桌面右击出现新选项
什么是仓库呢?仓库又名版本库,英文名repository, 我们可以简单理解成是一个目录,用于存放代码的,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除等操作Git都能跟踪到。
①在安装好后首次使用需要先进行全局配置
桌面空白处右键,点击“Git Bash Here”以打开Git命令行窗口,输入下列内容(用户名和邮箱是GitHub的)
$ git config --global user.name "用户名”
$ git config --global user.email "邮箱地址"
②创建仓库
当我们需要让Git 去管理某个新项目/已存在项目的时候,就需要创建仓库了。注意,创建仓库时使用的目录不一定要求是空目录,选择一个非空目录也是可以的,但是不建议在
现有项目上来学习Git。
注意:为了避免在学习或使用过程中出现各种奇葩问题,请不要使用包含中文的目录名(父目录亦是如此)。
如图所示,
a.创建空目录 mkdir 文件名
b.在命令行中进入目录 cd 文件名
c.Git仓库初始化(让Git指导,它需要来管理这个目录) git init
(记得显示 隐藏文件)
③Git常用指令操作
查看当前状态: git status
[非必要]
添加到缓存区: git add 文件名
说明: git add指令,可以添加一个文件,也可以同时添加多个文件。
语法1: git add 文件名
语法2: git add 文件名1 文件名2 文件名3
语法3: git add . [添加当前目录到缓存区中]
提交至版本库: git commit -m“注释内容”
在后续对于文件(可以操作1个或多个)操作之后,重复使用git add与git commit指令即
可。
版本回退分为两步骤进行操作:
①查看版本,确定需基回到的时刻点
指令: git log
git log --pretty=oneline
(推荐用)
②回退操作
指令: git reset --hard 版本号
黄色标识字符
注意:回到过去之后,要想再回到之前最新的版本的时候,则需要使用指令去查看历史操作,
以得到最新的commit id(版本号).
指令: git reflog
小结: .
a.要想回到过去,必须先得到commit id,然后通过git reset -hard进行回退:
b.要想回到未来,需要使用git rflg进行历史操作查看,得到最新的commit id;
c.在写回退指令的时候commit id可以不用写全,git 会自动识别,但是也不能写太少,至
少需要写前4位字符。
通过GitHub创建即可,简单易用。【仓库名称(repository name)要求在当前账号下唯一】
1、新建一个空的目录并进入【mkdir 文件名
】
2、使用clone指令将线上仓库克隆到本地 【 git clone 线上仓库地址
】
3、在仓库上做对应的操作(提交暂存区、提交本地仓库、拉取线上仓库)
clone–操作–add–commit–push
提交到线上仓库的指令: git push
此处易出现的问题为
连接超时443问题 Failed to connect to github.com port 443:connection timed out
10.27 有效解决方案 克隆地址的https改为git
以及第一次的权限403问题
参考视频即可 隐藏的git文件中的config文件https://后加上账号和密码(密码已废除,用令牌)
但是代码托管平台 GitHub 于21年 8 月 13 日周五这天正式废除了基于密码的 Git 身份验证。
(5条消息) 忽然发现GitHub用不了了,原来git的账密验证已经弃用,改用 token 或 SSH 密钥_从零开始-CSDN博客
(5条消息) github使用pull或push失效,需要改用token登录的流程_这道题太难了!的博客-CSDN博客
新验证方式如上。
终于成功了,如上图所示。
在GitHub上创建一个文件
Add file→ 输入文件名,内容,注释→创建即可。
拉取线上仓库指令: git pull
每天第一件事情就是git pull(拉取线上仓库最新版本),最后一件事git push(本地代码提交到仓库)
略。
在版本回退的章节里,每次提交后都会有记录,Git 把它们串成时间线,形成类似于时
闻轴的东西,这个时间轴就是一一个分支,我们称之为master分支。
在开发的时候往往是团队协作,多人进行开发,因此光有一一个分支是无法满足多人同时
开发的需求的,并且在分支上工作并不影响其他分支的正常使用,会更加安全,Git 鼓励开发者使用分支去完成一些开发任务。
分支相关指令:
查看分支: git branch
创建分支: git branch 分支名
切换分支: git checkout 分支名
删除分支: git branch -d 分支名
合并分支: git merge 被合并的分支名
查看—创建—切换
新增一行内容到分支login,并提交到本地
再切回master,readme文件中的新增行消失。此时需要合并。
合并后,login分支可删除了。
【在删除分支时,一定要先退出要删除的分支】
【此时git push 又超时了443,尝试一番,发现GitHub必须在线。(刷新GitHub或重新打开)】
https://zhuanlan.zhihu.com/p/364453651?utm_source=qq&utm_medium=social&utm_oi=1022579437115572224
【上述网站为一个修改host的软件,可以加速github社区】
【Github for Desktop】【Source tree】
场景:在项目目录下有很多万年不变的文件目录,例如css、js、images 等,或者还有一些目录即便有改动,我们也不想让其提交到远程仓库的文档。此时我们可以使用“忽略文
件”机制来实现需求。
忽略文件需要新建一个名为.gitignore 的文件,该文件用于声明忽略文件或不忽略文件
的规则,规则对当前目录及其子目录生效。
注意:该文件因为没有文件名,没办法直接在windows 目录下直接创建,可以通过命
令行Git Bash来touch创建。
常见规则写法有如下几种:
1) /mtk/ 过滤整个文件夹
3)* .zip 过滤所有zip文件
3) /mtk/do.c 过滤某个具体文件
4)lindex.php 不过滤具体某个文件
又遇到一个错误,方法如下
我们在使用git初始化一个项目时,尤其是通过git submodule update --init --remote初始化子模块时,可能会遇到下面这个错误:
fatal: unable to access 'https://myserver.com/gogs/user1/myapp/': SSL certificate problem: unable to get local issuer certificate
这是由于当你通过HTTPS访问Git远程仓库的时候,如果服务器上的SSL证书未经过第三方机构认证,git就会报错。原因是因为未知的没有签署过的证书意味着可能存在很大的风险。解决办法就是通过下面的命令将git中的sslverify关掉:
git config --global http.sslverify false
添加一个js目录并写一个js文件,然后提交。之后,忽略文件的添加
之后,再在js目录里加了一个js文件。再次提交,在github仓库可看到效果。
1、我在github新建了一个仓库repository。
2、clone–cd–写代码–add–commit–push (完成啦!)
依次输入
拉取一下。(我把title在github上修改了)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。