python后阶段的学习思路以及对git的基本理解(来源于知乎:我爱小徐子)

0 人赞了该文章

最近感觉思绪很乱,想自己开发一个微信后台,于是知道了webpy框架,但是我自己又想学习django框架,因为django不仅可以用来开发后台,也可以用来搭建个人博客,于是这几天通读了django教程。大致上,明白了网站后台的工作机制。后期会逐步在专栏中介绍。

说了上面一通废话,我决定得理一下思路。

最近主要想做两个事情。一是学习django框架(简单的微信公众号后台,简单的个人博客搭建,基本的linux知识(虽然我下学期会学习linux操作系统)),二是通读计算机网络,最近跟导师要了一个关于ipv6应用技术的课题,虽然有大佬撑腰,但是我也不能太废吧(2333)。

既然,这样那就很简单了:要学习,总得时不时逛GitHub吧,逛GitHub看见好的代码可以copy下来自己学习吧,虽然你可以直接点downloads,但是,作为一个coder,会不会有点low??! 所以,还是先来学习一下git的基本用法和命令。下面进入正题。


首先给大家推荐一个廖雪峰大佬写的git教程:Git教程,写的很详细,值得一读。

一.对git的理解

它是一个分布式版本控制系统。可以这样理解:每台装有git的电脑都可以当作是一个是一个服务器,它含有你当前需要处理的项目的全部内容,你可以通过将项目上传至一个中转站(如GitHub),与你的其他朋友一起交换各自所修改的内容。假设哪天GitHub倒闭了,你仍然可以将项目上传到其他中转站上(如码云),然后与你的朋友互换信息。git的版本库可以分为本地版本库,和远程版本库两个部分来介绍。

二.本地仓库

所谓的版本控制,也就是对项目进行控制,项目是什么? 在我看来,不就是一个个文件夹嘛。(可能不太准确,欢迎各路大神来踢场,求轻喷),git能够很好的记录下,你对文件夹做出的每一个改动,比如哪个文件夹下的那个文件的第几行,被你删除了。 当然,git只能记录文本信息的具体改动,对于二进制的内容,他只能记录所发生的内容的变化。git也不是神仙下凡,并不是哪一个文件夹他都能控制,所以,你想控制哪一个项目,你就得先对其初始化。

比如,我在桌面上新建一个test文件夹,如果让它能够被git控制,使用命令:(在这里git的安装我就不说了,很简单,请自行百度)

git  init

这样,test这个文件夹就能被git控制了。

下面,我们我们写一个txt文件,将其放入test中,



但是这样文件并没有被添加到git仓库中,所以我们还需要:

git  add  .
git  commit  -m"第一次提交"

这样这个文件夹就被我们添加到了git本地仓库。

但是,怎样与远程仓库联系起来呢?

三.将本地项目上传至远程仓库

比如我自己的GitHub,我们先将本地仓库与远程仓库联系起来:

git  remote  add  origin  https://github.com/reBiocoder/python.git

用 git remote -v查看一下:

可以看见已经关联上了。

将test中的文件上传上去,在此之前,需要注意到的一个问题是,如果你的GitHub仓库中已经存在内容了,如果,你现在直接git push 是不能成功的,因为远程仓库中的内容你没有进行同步。所以,要上传的话,首先:

git  pull  origin master:master#等同于
(git  fetch  origin
git  merge  origin/master)

pull命令的规则:git pull <远程主机名> <远程分支名>:<本地分支名>

然后再git push origin master,它的意思是,将本地的项目上传到远程主机(GitHub)。

此时,如果你的远程仓库中,本来就存在内容,而且他们之前完全没有进行过关联,你可能会遇到这个问题:

提示“non-fast-forward”,其实,出现得原因就是因为你在同步两个完全不同得项目,所以git给你自动禁止了,如果要解除禁制的话,使用下面的命令:

git pull origin master --allow-unrelated-histories

这样即可同步,然后在进行push

最后可以看见,文件被同步上,我的GitHub了。

四.修改远程项目并再次上传

上面我们主要讲的是当本地有一个项目的时候,如何将它与远程仓库关联并上传。但是,如果GitHub上本来就有一个项目,而你需要的,仅仅是对它进行修改,那么,应该怎么做呢?

下面我们来进行一个操作:将我GitHub上的一个仓库的两个分支进行合并,然后再本地修改之后,上传到远程仓库。

比如,我的GitHub上的一个仓库:reBiocoder/python,打开之后是这样的:

下面我们将它clone到本地:

git  clone  https://github.com/reBiocoder/python

可以看见,下载成功。在文件夹中的显示就是:

可以看见,这就是刚刚从远程下载的仓库python。

然后再将我仓库的另一个分支也clone下来:

git  clone  -b  reBiocoder-patch-1 https://github.com/reBiocoder/python.git

如果你要clone某个仓库的一个分支的话,使用命令:

git  clone  -b  <分支名>   <仓库地址>

然后将分支的内容,合并成一个文件夹。之后进行上传

git  add .
git  commit  -m"二次更新"
git  push    origin  master

可以看见,上传成功! 我们再来看一下,GitHub上的内容:

已被成功修改!


上面具体介绍了git的常见基本命令,有什么问题大家可以评论和我交流。

更多优质内容请关注微信公众号:生物信息与python。

我的个人博客:www.lovexu.xyz


评论

暂无评论