记录下这几天使用 GitHub 碰到的问题
1、在 GitHub 上为新项目创建一个库时,默认是不使能主页功能的
如果你想要使用 GitHub 的主页功能做一个博客或一份简历,需要人为设置一下。如下图:

制作简历,这里有一份更详细的参考:如何在Github Pages搭建自己写的页面?
2、GitHub 对文件路径大小写敏感
我的简历中用到的一张图片保存格式是“PNG”,代码里的url中写成了小写的“png”。在本地验证的时候,图片是正常显示的,但是合入到 GitHub 上就无法显示了。修改成统一的之后,问题就解决了。


3、幽灵记录
假设这样一个场景:将一个目录初始化为仓库,然后将开发一半的文件放进来,通过 git 进行管理。在将某个文件 git rm 之后(注意,还没有 git commit),你突然发现对 git 还不太熟,担心通过命令操作不保险,不如先手动备份一份,然后就将这个目录复制到了其他地方。又进行了一些列操作之后,你想把这个初始化为仓库的目录下的内容全部干掉,重新来。于是,你在目录下进行 rm、commit、push,你以为彻底删除了。然后你把之前手动备份过的文件拷贝回来。但是,这时通过 git status 查看,发现仍有未 git commit 的文件,就像幽灵一样。

这里插一条 Git 知识点:将本地某个目录 init 为仓库时,该目录下就会生成 .git 目录(在 windows 系统下“.”开头的文件或文件夹都是默认隐藏的),它里面存储着管理当前目录内容所需的仓库数据,比如提交记录等等。
所以,回到上面场景中提到的问题,这其实是 .git 目录在作怪。你把手动备份的目录重新拷贝回来之后,也将之前的 .git 目录拷贝了回来。手动备份之前,对文件进行了 git rm,但是没有 git commit。所以.git目录就保存了到git rm那一步的记录。后面拷贝回来,git status 就会出现有文件“Changes not staged for commit”,这其实都是之前的记录。
在这点上,SVN 也是一样的工作原理,通过一个 .SVN 来保存提交记录。
4、克隆远程仓库
1)将远程仓库clone到本地不需要对提前当前目录初始化就能 clone,默认会在当前目录生成一个文件名和远程仓库分支一样的文件夹。这个文件夹中有一个“.git”文件夹。
2)如果克隆提示远程仓库 does not exist,在确认 GitHub 已有这个分支后,检查命令中的路径拼写是否有误。我之前犯过一次错误,使用 ssh 地址,结果把:打成了/,所以一直克隆失败。
5、Pull Request 流程
他人的项目(在他人的GitHub账号下的库中)-------【Fork(GitHub上操作)】------>自己的GitHub账户下,创建了一个相同的库-------【clone】------>复制到自己的本地-------【checkout -b】------>创建一个特性分支用于修改代码,并切换到该分支-------【修改、添加代码】------>确认修改无误-------【push】------>创建远程分支-------【登录GitHub,并切换至特性分支】------>Send Pull Request
记录下这几天使用 GitHub 碰到的问题的更多相关文章
- 使用Windows下的git工具往github上传代码 踩坑记录
使用Windows下的git工具往github上传代码 踩坑记录 背景 由于以前接触的项目都是通过svn进行版本控制,现在公司项目使用git,加上自己平时有一个练手小项目,趁着周末试着把项目上传到自己 ...
- 记录下UIButton的图文妙用和子控件的优先显示
UIButton的用处特别多,这里只记录下把按钮应用在图文显示的场景,和需要把图片作为按钮的背景图片显示场景: 另外记录下在父控件的子控件优先显示方法(控件置于最前面和置于最后面). 先上效果图: 1 ...
- 随便记录下系列 - node->express
随便记录下系列 - node->express 文章用啥写?VsCode. 代码用啥写?VsCode. 编辑器下载:VsCode 一.windows下安装node.js环境: 下载地址 相比以前 ...
- 记录下ECharts的一些功能
用到ECharts记录下一些功能免得以后找文档找不到. 这个博客对ECharts讲解很全面 http://www.stepday.com/my.stepday/?echarts // 使用 requi ...
- C#值类型以及默认值记录下
C#的值类型有bool,byte,sbyte,decimal,double,float,int,uint,long,string等 如果我们擅长使用默认值,可以帮助我们减少带来赋值及代码编写. 比如我 ...
- 记录下mybatis中#{}和${}传参的区别
最近在用mybatis,之前用过ibatis,总体来说差不多,不过还是遇到了不少问题,再次记录下, 比如说用#{},和 ${}传参的区别, 使用#传入参数是,sql语句解析是会加上"&quo ...
- 记录下url拼接的多条件筛选js
本着为提高工作效率百度或者google这些代码发现拿过来的都不好用,然后自己写了个,写的一般但记录下以后再优化 <html> <head> <script> $(f ...
- Windows下用Composer引入官方GitHub扩展包
Windows下用Composer引入官方GitHub扩展包 1. 当你打开威武RC4版本的链接的时候,往下拉你可以看到这个,然后你要做的就是想到,百度Composer,看看是个什么鬼,别想太多,跟着 ...
- 记录下Webapi签名机制
首先,写这篇文章的原因是因为最近某一个项目中的接口被人为调用了,导致了数据库数据被串改.虽然是内部人无意点的,但还是引起了我的担忧,所有整理了下关于Webapi的相关签名机制. 一.我们在开发接口时, ...
随机推荐
- HTML5 缓存: cache manifest
---恢复内容开始--- 1:MIME TYPE:text/cache-manifest 服务器配置MIME类型2:需要由你创建的:NAME.manifest 创建manifest文件3:给 < ...
- antDesign 使用Form并进行表单验证
import React from 'react'; import {Form,Input,Select,Button ...} from 'antd'; class PageName extends ...
- codeforce 240E 最小树形图+路径记录更新
最小树形图的路径是在不断建立新图的过程中更新的,因此需要开一个结构体cancle记录那些被更新的边,保存可能会被取消的边和边在旧图中的id 在朱刘算法最后添加了一个从后往前遍历新建边的循环,这可以理解 ...
- jenkins持续集成:构建多个job同时执行
在jenkins 构建任务时,同时只能构建2个,但是有时候可能涉及到需要同时执行多个任务(大于2个),如果不能同时运行的话,就需要等待上一个执行完了,再执行第三个 比如用例非常多,需要把不同的用例分给 ...
- 饮冰三年-人工智能-Python-16Python基础之迭代器、生成器、装饰器
一:迭代器: 最大的特点:节省内存 1.1 迭代器协议 a:对象必须提供一个next方法, b:执行方法要么返回迭代中的下一项,要么抛弃一个Stopiteration异常, c:只能向后不能向前. 1 ...
- epoll(二)
epoll概念 epoll对文件描述符的操作方式有两种工作模式:LT模式(Level Trigger,水平触发) 和ET模式(Edge Trigger,边缘触发). LT模式:当epoll_wait检 ...
- [转] Webpack的devtool和source maps
source maps Webpack打包生成的.map后缀文件,使得我们的开发调试更加方便,它能帮助我们链接到断点对应的源代码的位置进行调试(//# souceURL),而devtool就是用来指定 ...
- Pytorch LSTM 词性判断
首先,我们定义好一个LSTM网络,然后给出一个句子,每个句子都有很多个词构成,每个词可以用一个词向量表示,这样一句话就可以形成一个序列,我们将这个序列依次传入LSTM,然后就可以得到与序列等长的输出, ...
- ajax一次获取整个表单的数据
$.ajax({ cache: true, type: "POST", url:ajaxCallUrl, data:$('#yourformid').serialize(),// ...
- 【BZOJ2402】陶陶的难题II 分数规划+树链剖分+线段树+凸包
题解: 首先分数规划是很明显的 然后在于我们如何要快速要求yi-mid*xi的最值 这个是看了题解之后才知道的 这个是斜率的一个基本方法 我们设y=mid*x+z 那么显然我们可以把(x,y)插入到一 ...