文章目录
GitHub 操作
GitHub 网址:https://github.com/
一、创建远程仓库
首先登录到自己的github账号上,在首页右上角 + 的下拉菜单中选择第一个New repository:
一般我们的远程库名称和本地库保持一致,所以我们远程库就命名为git-demo,然后添加库的描述,选择库为公共仓库,最后确认创建:
创建完成后,会有提示信息,如下图即可:
返回顶部
二、创建远程库别名
首先我们,在提示信息中复制仓库的地址链接(http
:https://github.com/Code-for-dream/git-demo.git):
此操作是先初始化本地库,然后与已创建的远程库进行对接。
- 命令:
git remote add <远端名称> <仓库路径>
- 远端名称,默认是
origin
,取决于远端服务器设置 - 仓库路径,从远端服务器获取的仓库
URL
其实这里起别名更确切的说是创建本地库和远程库的连接,使用命令git remote -v
可以查看当前本地库的连接。
-
fetch
用于拉取远程库 -
push
用于推送本地库
返回顶部
三、推送本地分支到远程库
命令:git push [-f] [--set-upstream] [远端名称 [本地分支名][:远端分支名] ]
- 如果远程分支名和本地分支名称相同,则可以只写本地分支
-
git push origin master
-
-f
表示强制覆盖 -
--set-upstream
表示推送到远端的同时并且建立起和远端分支的关联关系。
-
git push --set-upstream origin master
- 如果当前分支已经和远端分支关联,则可以省略分支名和远端名。
-
git push
将master
分支推送到已关联的远端分支。
首次推送需要认证,界面如下:
可以使用浏览器的账号或者使用Token,这里我们直接选择浏览器账号即可:
进一步确认密码,直接输入密码:
创建连接后,又报错,说主机上的程序关闭了连接,并弹出了窗口,试着填写信息:
最后还是报错,一看发现密码认证方式失效了,然后使用Token认证
(参见博客:Git报错token认证)就可以了:
查看远程仓库中,已经存在hello.txt
文件,说明推送成功!
返回顶部
四、拉取远程库到本地库
拉取 命令:git pull [remote name] [branch name]
- 拉取指令就是将远端仓库的修改拉到本地并自动进行合并,等同于
fetch+merge
- 如果不指定远端名称和分支名,则抓取所有并更新当前分支。
可以看到在网页端我们也可以查看库中的文件内容,如果点击右侧笔,还可以进行编辑,并且最后还可以进行提交:
默认master分支提交后,可以发现内容已经发生改变:
**此时,我们需要在本地拉取到刚刚网页上修改好的文件: **
可以看到本地库的文件内容已经发生了改变:
并且查看git日志的时候,可以查到网页的提交信息:
返回顶部
五、克隆远程仓库到本地
如果已经有一个远端仓库,我们可以直接clone到本地。
- 命令:
git clone <仓库路径> [本地目录]
- 本地目录可以省略,会自动生成一个目录
我们在本地创建一个新的空文件夹,用于存放克隆下来的远程仓库:
复制我们的远程仓库的网页链接地址:
在当前目录下打开git,使用git命令进行克隆:
完成后,在git-clone目录下就会生成git-demo目录及其内容:
并且clone操作会做如下操作;
- 拉取代码
- 初始化本地仓库(.git)
- 创建别名
返回顶部
六、SSH免密登陆
可以看到,在我们获取仓库地址的时候除了https地址
外,还有一个SSH链接地址
,同样可以使用,在配置了SSH
之后,我们接下来再往远程仓库 push
东西的时候使用 SSH
连接就不需要登录了。
配置SSH很简单,来到我们当前的电脑用户目录下,打开git bash,执行命令 ssh-keygen -t rsa -C github用户邮箱
,然后回车三次,就可以生成非对称秘钥对:
在用户目录下生成的.ssh
文件夹中打开.pub
公钥文件,并且复制全部内容:
在github
的setting
里找到SSH and GPG keys
:
点击New SSH key
:
将公钥文件中的内容全部复制进去,名称随便起:
SSH配置完成:
我们在git
上面新创建文件git.txt
,然后复制仓库的SSH地址
,在本地进行拉取查看文件内容:
可以看到,首次使用SSH
需要我们确认一次,然后找到拉取的git.txt
,获取内容:
同样的,在我们克隆的仓库里,拉取时不用再确认和认证:
返回顶部