近日想分享一些文件,但是用度盘又太麻烦了(速度也很恶心)。所以突发奇想去研究了下GitHub的仓库,这篇文章也就是一个最最最基础的基本操作。基本实现了可以在GitHub上存储文本信息与代码。

由于我的系统是Windows,所以以下的实现都是基于windows的(貌似其他系统也差不了很多)。

1 注册账号

这个不多说啦,前往官网按照提示注册就好。邮箱没有限制,QQ邮箱也行(我就是用的QQ邮箱)。

2 创建一个新的仓库

在你完成注册账号后,GitHub会引导你创建你的第一个仓库。界面大概如下

七步曲:

  • 【Repository name】填上你的仓库名
  • 【Description】这项是选填的,就是对于你这个仓库的描述信息。
  • 【Public/Private】选择这个仓库是公开的还是你私人的。当然,私人的是需要收费的。
  • 【README】是否要帮你自动初始化一个README文件,这个README文件相当于整个仓库的一个介绍,是markdown格式的。
  • 【Add .gitignore】选择同步的时候是否要忽略某些类型的文件,被选择的文件类型会写入这个.gitignore文件中。
  • 【Add a license】GitHub对于每个仓库都要求有个license,一般好像就选择MIT,并不太清楚有什么区别。
  • 【Create repository】点击就创建了仓库啦!

这时候我们可以看到我们的仓库里暂时有LICENSEREADME.md这两个文件。

3 与本地仓库同步

3.1 下载git

在此之前,我们需要下载安装git到我们的电脑,这样我们才能用git的代码来操作。

git for windows 下载地址

3.2 配置git

首先,我们需要在本地创建ssh key。打开刚刚安装的git bash,这是一个可以输入git代码的命令行。

输入以下代码

$ ssh-keygen -t rsa -C "your_email@youremail.com"

其中your_email@youremail.com改为我们注册github的邮箱,接下来回车就好了。

成功的话会在~/下生成.ssh文件夹,如果不知道具体位置,可以查看刚刚命令行中生成的反馈信息。在这个文件夹里,用记事本打开id_rsa.pub文件,复制里面的全部内容(其实就是我们需要的ssh key)。

回到网页版的github,进入Account Settings,左边菜单选择SSH keys。然后选择Add SSH key。title随便填吧(我反正没填),key复制进去就好。

为了验证是否成功,在git bash里输入下面代码。

$ ssh -T git@github.com

如果是第一次的会提示是否continue,输入yes就好。

看到返回"You've successfully authenticated, but GitHub does not provide shell access."那就是已经成功连上github了。

然后设置username和email,因为github每次commit都会记录他们。

使用下面的代码

$ git config --global user.name "your name"
$ git config --global user.email "your_email@youremail.com"

和上面一样,这里的name和email是要填注册github时的用户名和邮箱。

3.3 同步远程仓库至本地

对准备放本地仓库的文件夹点击右键Git Bash Here

然后输入下面的代码。

$ git clone https://github.com/yourname/yourRepoName.git

其中的yourname就是你注册时的用户名,yourRepoName也就是你创建的仓库的名称。

之后就可以在文件夹里看到仓库了。

3.4 本地仓库的改动同步至远程仓库

如果对本地仓库有所改动,比如我添加了一个文件夹,里面放有我coursera的machine learning所有的作业代码。注意不能是空文件夹,github不支持管理空文件夹。然后我要把这些改动同步至远程仓库里。

只需要对本地仓库的文件夹,比如说我的仓库叫CodeRepo,我就对这个名字的文件夹右键,选择Git Bash Here。

然后输入下面的代码。

$ git add .
$ git commit -m "information"

对于第一句也可以替换下。具体的区别如下。

git add -A 提交所有变化

git add -u 提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)

git add . 提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件

这时候改动已经提交到了HEAD,还不是远程仓库。

再输入下面的代码。

$ git push origin master

其中master可以替换为任何一个branch,一般默认的都是master。

3.5 远程仓库的改动同步至本地仓库

在项目当前目录下,输入下面的代码。

$ git pull

【Git/GitHub学习笔记】基本操作——创建仓库,本地、远程同步等的更多相关文章

  1. HIT2019春软件构造->Git&Github学习笔记

    由于软件构造课程需要,学习使用git,以下作为学习笔记. 一.Git初始化及仓库创建和操作  1.基本信息设置(设置签名)  命令        项目级别/仓库级别:仅在当前本地库范围内有效 git ...

  2. git/github学习笔记

    郑重提示,本文来自这里,如果喜欢,请关注原作者. 1. git 版本控制系统 相比CVS\SVN优势: - 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度块 ...

  3. 【Git/GitHub学习笔记】一键更新多个git仓库至远程

    因为同时在本地维护几个Github的仓库,每次更新后每个仓库要重复三步提交同步,有点麻烦. 发现可以写.sh文件来实现一键更新. 比如我要更新我的BlogBackup和CodeRepo两个仓库的代码如 ...

  4. Git学习笔记(2)-创建仓库

    一.Git简介 1.Git是什么 Git是分布式版本控制系统 2.Git有什么特点 (1)Git是分布式的SCM,SVN是集中式的 (2)Git每个历史版本存储完整的文件,SVN存储文件差异 (3)G ...

  5. Git与GitHub学习笔记(四)合并远程分支

    在这里的前提: 1.你已经fork 源作者的项目到你自己的仓库了 2.git clone 自己仓库fork的项目,注意地址,这里是自己的账号下的地址,而不是源作者的项目地址哦 3.在本地修改代码,gi ...

  6. git的学习笔记(二):git远程操作

    1.创建ssh key ssh-keygen -t rsa -C "your_email@example.com" 执行命令后会在用户的家目录生成.ssh的隐藏文件夹,文件夹里有公 ...

  7. GIT学习笔记(4):远程分支

    GIT学习笔记(4):远程分支 远程分支 远程分支是什么 远程分支是对远程仓库中的分支的索引.它们是一些无法移动的本地分支:只有在GIT进行网络交互时才会更新.远程分支就是书签,提醒着你上次连接远程仓 ...

  8. git & github 菜鸟笔记

    1.概念: 最先进的分布式版本控制系统 文件修改该提交的内容:---版本 文件名 用户 说明 日期 GitHub网站上线了,它为开源项目免费提供Git存储 --CVS及SVN都是集中式的版本控制系统, ...

  9. Django:学习笔记(2)——创建第一个应用

    Django:学习笔记(2)——创建第一个应用 创建应用 在 Django 中,每一个应用都是一个 Python 包,并且遵循着相同的约定.Django 自带一个工具,可以帮你生成应用的基础目录结构, ...

随机推荐

  1. arp_annouce=2详解

    arp_annouce=0的时候 手册上说的是到底是是说当我这个包出去的时候询问arp地址, 当arp_announce=0的时候,是说使用数据包中的地址去进行arp的请求, 当arp_announc ...

  2. centos7 nginx端口转发出现502的其中一种原因

    在排查了一系列可能的原因后仍无法解决,经资料查阅可能是SELinux造成,SELinux很强大但若配置不当也会造成很多组件无法正常使用,这里直接将其关闭: //打开配置文件 vi /etc/selin ...

  3. 升级到EFCore2.0

    EF Core 2.0上周已经发布了 文章内容基于vs2017,请大家先安装好vs2017(15.3). 本篇文章主要讲下差异点,跟之前一样的就不再重复了. 文章目录(差异点): 一.新建项目, EF ...

  4. RT-thread finsh组件工作流程

    finsh是RT-Thread的命令行外壳(shell),提供一套供用户在命令行的操作接口,主要用于调试.查看系统信息.在大部分嵌入式系统中,一般开发调试都使用硬件调试器和printf日志打印,在有些 ...

  5. Docker的安装(6-13)

    摘自<Docker-从入门到实践> 一.Docker的安装 准备工作 系统要求 Docker CE 支持以下版本的 Ubuntu 操作系统: Artful 17.10 (Docker CE ...

  6. [luogu2783] 有机化学之神偶尔会做作弊

    题目链接 洛谷. Solution 边双缩点然后\(lca\)跑\(dis\)就好了. 注意这里是边双,不知道为啥所有题解都说的是点双. 边双是定义在点上的,即每个点只属于一个边双:点双是定义在边上的 ...

  7. 去掉vue 中的代码规范检测(Eslint验证)

    去掉vue 中的代码规范检测(Eslint验证): 1.在搭建vue脚手架时提示是否启用eslint检测的. Use ESLint to lint your code? 写 no; 2.如果项目已经生 ...

  8. webpack css压缩方案

    css-loader原有的minimize选项在1.0.0版本已经移除,不能使用其进行css压缩. 目前可行的css压缩方案有: 1. postcss-loader with cssnano or u ...

  9. 【枚举暴力】【UVA11464】 Even Parity

    传送门 Description 给你一个0/1矩阵,可以将矩阵中的0变成1,问最少经过多少此操作使得矩阵任意一元素四周的元素和为偶数. Input 第一行是一个整数T代表数据组数,每组数据包含以下内容 ...

  10. Install JDK In Ubuntu

    安装Linux软件包管理器rpm apt install rpm 查看已安装的软件,如JDK rpm -qa|grep jdk #查询所有 找jdk 卸载已安装的软件 rpm -e nodeps 包名 ...