从零开始Github
从零开始Github
使用前准备
国内的网络环境大家都心里明白,github的访问也一直不间断抽风,之前我一直以为是防火墙的锅,需要用梯子才行。今天随便搜了一下,发现其实是dns的锅,其实只要修改下hosts就可以如丝滑般访问了。
修改hosts
先查询两个域名
- github.com
- github.global.ssl.fastly.net
的实际ip。
我使用的是这个网站
修改电脑的hosts文件:
140.82.112.3 github.com
199.232.69.194 github.global.ssl.fastly.net
刷新dns缓存:
ipconfg/flushdns
非windows电脑或者更多介绍可以阅读国内访问Github的方法
注册账号
这个简单,就不多做赘述。
安装git
git是用于github的代码管理工具,相当于SVN。
这里是官方下载页面,但是我下载的时候抽风,根本下载不了,只能随手用git+版本去搜了一下,这时候发现了一个神奇的网站,这个网站没有名称没有介绍,就提供一个功能:把github上抽风的资源连接放上去搜索,找到镜像资源然后进行下载。
这里提供一个我上传到度盘的安装包:
链接:https://pan.baidu.com/s/15P_j-nNszD5WdNsNHJFu-w
提取码:4373
复制这段内容后打开百度网盘手机App,操作更方便哦--来自百度网盘超级会员V1的分享
安装过程无需赘述,需要注意的是其中有一步需要选择git默认的代码编辑器,我这里是选择了VSCode。
一路next,安装完毕后会出现git的运行窗口:
github的使用
新建代码仓库
在github登陆个人账号,点击右上角加号选择new repository就可以打开新建代码仓库的页面。
最重要的是repository name,选一个合适的项目名称,github会实时检测,能通过的话会显示绿色打勾,否则是不能创建的。
其它选项可以都默认,不做修改。
创建好之后就会跳转到代码仓库页面:
克隆代码仓库
和SVN一样,要用git管理代码,先要从github上下载代码分支到本地,本地修改后再提交。
之前已经打开了git窗口,git的操作方式和linux下的shell是一致的,现在直接输入命令,将工作目录改为我们要存放代码的目录:
cd d:workspace/python/
然后克隆代码到本地,需要注意的是本地不能有和代码仓库同名的文件夹,否则会报错。
git clone https://github.com/icexmoon/haokan_download
在这里,
git clone
命令后边的就是之前我们创建的代码仓库的地址。
第一次克隆的时候报错:
fatal: unable to access 'https://github.com/icexmoon/haokan_download/': OpenSSL SSL_read: Connection was reset, errno 10054
上网查了一下,openssl并非必须,是可以关掉的,虽然说关闭openssl不安全,但国内这网络环境,懂的都懂。
输入以下命令关闭git连接时候的openssl验证:
git config --global http.sslVerify "false"
再次输入克隆命令,显示成成功:
Cloning into 'haokan_download'...
warning: You appear to have cloned an empty repository.
因为我们创建的是空的代码仓库,所以会有warning,不必在意。
进入仓库目录,命令提示符后会显示master,表示这是一个主分支,其中有一个叫做.git
的文件,标示这个目录是git的代码仓库,如果删除就会变为普通文件目录。
$ ls -al
total 37
drwxr-xr-x 1 70748 197609 0 Mar 3 16:53 ./
drwxr-xr-x 1 70748 197609 0 Mar 3 16:52 ../
drwxr-xr-x 1 70748 197609 0 Mar 3 16:52 .git/
使用git remote -v
命令可以显示当前代码仓库关联的服务器:
$ git remote -v
origin https://github.com/icexmoon/haokan_download (fetch)
origin https://github.com/icexmoon/haokan_download (push)
提交代码
现在我们就可以把自己创建的项目文件放入克隆的这个目录下,然后使用git status
命令查看代码仓库状态:
$ git status
On branch masterNo commits yet
Untracked files:
(use "git add..." to include in what will be committed)
pycache/
download_help.py
haokan_author.py
haokan_download.pynothing added to commit but untracked files present (use "git add" to track)
这表明本地有文件没有提交到服务器,并提示可以用git add
命令添加,需要注意的是这里的add和SVN里是一样的,只是把这个文件添加到代码库管理范围内,要确实提交到服务端并入主分支还需要最终commit才行。
可以看到代码已经都加入了代码仓库管理范围。
在提交代码之前我们还需要设置一些个人联系信息以便代码协同开发等:
git config --global user.email "icexmoon@qq.com"
git config --global user.name "icexmoon"
现在我们可以提交代码了:
git commit -m "new python project"
-m
参数后面的是注释,相信做过开发的都有过喷或者被喷代码仓库没注释的经历。
但是现在如果打开代码仓库页面的话,还是看不到代码,这是因为还需要一步:
git push
这一步会将提交的代码合并到代码仓库的代码分支,因为现在就是stable分支,所以直接合并。
应该相当于SVN中的merge分支操作
这一步操作需要用户输入github账号密码,验证完毕后就会上传代码:
这样就OK了。
现在我们可以在代码仓库网页上看到上传的代码了:
这里只是简单的把github的使用流程跑了一遍,想了解更多内容可以看这篇博文,写的相当不错。
参考资料
https://blog.csdn.net/weixin_45982067/article/details/111660770