Git基本操作一
全世界最大同性交友群GitHub,值得拥有。
1.代码获取Gist文件最新版本
Gist是Github发布的新功能,主要是用来存放小型代码。结合浏览器插件GistBox,可以打造成一个类似于有道云笔记的笔记。各种好处,我就不说了。知乎上有。我的需求是这样的,在博客中有一个每日一问的版块,需要使用到后台,我想到了使用Gist编写内容,然后通过ajax的方式调用获取数据。get-a-single-gist ,Gist提供了API供读取相关内容,但是这里面有个问题,是因为api调用的话,会携带大量的history信息,我考虑如果这个文本被修改了很多次,会不会返回的内容很多呢?那有没有直接获取最新版本的Gist的方法呢?回答是有的。
1)获取单独的Gist GET /gists/:gist_id
实例: ,:gist_id是在创建完成Gist之后,在Embed里面用户名之后的一串数字即为这个Gist的id。
2)获取最新版本的Gist
要获取特定版本的Gist,可以直接点击上图的raw查看地址,特定版本:
1 | https://gist.githubusercontent.com/ <username\> /bd2afd6e78fd085fe988920343860d20/raw/6a450f1ba6d96f24bee0f2cd290e21084a337665/laster.js |
在打开的url中去掉raw后面的版本号,即为最新版本的Gist。但是这个请求是有问题的,当你改变了Gist的内容的时候,使用这个地址,并不会立刻得到最新的版本,需要过个几分钟时间,才能得到最新版本的Gist,可能Github服务器太多,反应不过来吧。
最新版本:
1 | https://gist.githubusercontent.com/<username\> /bd2afd6e78fd085fe988920343860d20/raw/laster.js |
这样就解决了我的问题,可以ajax获取Gist中的内容,呈现在页面中,只要修改Gist的内容,博客不用修改,也可以获取最新的内容,静态博客变成了动态博客。基于这种思想,有人专门开发了一个动态博客,送上链接 (不得不感叹,Github上的人才真是太多了,佩服,学习)
2.基本命令
1 | ## 放弃修改 |
3.Windows下删除和修改保存的git密码
有时候在局域网内搭建了一个git服务器,在使用Windows进行远程提交的时候,第一次会弹出框提示输入用户名密码,只需输入一次,windows就自动记住了用户名密码,以后就不用输入了。但是要是不小心输入错误了,怎么办?
进入控制面板->选择用户账户->选择管理你的凭据->选择Windows凭据->选择git保存的用户信息->选择编辑或者进行删除操作
4.git clone时携带用户名密码
有使用进行远程复制,如果显示remote: User permission denied,就需要在请求的时候,携带上用户名密码:git clone http://邮箱(或用户名):密码@仓库,例如: git clone http://ph-zhenglc:Ph2095@192.168.1.11:3000/phkj/PhEmsGis.git 。 有一个地方要注意,就是如果用户名密码中包含了@字符,可能需要进行转义,用 %40 代替 @ 字符。
5.Windows下删除和修改保存的git密码
有时候在局域网内搭建了一个git服务器,在使用Windows进行远程提交的时候,第一次会弹出框提示输入用户名密码,只需输入一次,windows就自动记住了用户名密码,以后就不用输入了。但是要是不小心输入错误了,怎么办?
进入控制面板->选择用户账户->选择管理你的凭据->选择Windows凭据->选择git保存的用户信息->选择编辑或者进行删除操作
6.git clone时携带用户名密码
有使用进行远程复制,如果显示remote: User permission denied,就需要在请求的时候,携带上用户名密码:git clone http://邮箱(或用户名):密码@仓库,例如: git clone http://ph-zhenglc:Ph2095@192.168.1.11:3000/phkj/PhEmsGis.git 。 有一个地方要注意,就是如果用户名密码中包含了@字符,可能需要进行转义,用 %40 代替 @ 字符。
7.修改gitignore后生效
1 | git rm -r --cached . #清除缓存 |
1.git 修改.gitignore后生效
8.linux下保存用户名和密码
(1) 在~目录下新建.git-credentials,直接vim .git-credentials,输入:
1 | https://{username}:{password}@github.com. |
(2) git config –global credential.helper store
9.window、Linux下使用ssh登录
1 | ssh-keygen -t rsa -C "邮箱" |
问题:
(1) 无法创建ssh
使用 ssh-keygen -t rsa无法创建id_rsa,提示权限错误。
1.使用ssh连接gitHub
10.解决使用git,ssh每次都要输入密码
执行命令:ssh-keygen -t rsa -C “邮箱” 时,不要输入密码,直接按回车就好了,这样每次使用ssh提交的时候就不用每次都输入密码了。如果已经生成了,那就重新执行一遍生成命令,直接按回车,然后将远程仓库中的ssh-key替换掉。不行的话,那就直接将用户文件夹下的.ssh\下的文件都删掉,重新生成,然后重新替换掉远程github上的ssh-key
1.解决使用git,ssh每次都要输入密码
11.Centos安装最新版的git
默认的Centos上使用yum install git方式,安装的git都是1.8.x版本,但是AzureDevops使用时总是会提示要安装最新版,本着不折腾就浑身难受的精神,我还是尝试了安装最新版的git。
(1) 安装ius源
1 | yum install \ |
(2) 安装git2u
1 | ## 检查 |