Github基础教程,用Github实现项目上传下载(持续更新)

注:使用Github电脑上需下载Git,并且因为Github国内访问较慢。可以使用chrome浏览器配合插件来加速访问。

1、Git的安装只要一路next就行、
Git百度下载链接: https://pan.baidu.com/s/13YN4axBDNhEAfm7UkHHDsg
提取码: tsk9
2、配合chrome插件访问教程:https://www.jianshu.com/p/8277dbe1a0dc
准备工作做好之后下面开始我们的分享。

1.安装 git

2.安装git后初始化git仓库:

随意创建一个文件夹 例如 mytest (这里可以假设我们的mytest文件夹就是开发项目时候的项目文件夹)点击进入该文件夹目录后鼠标 右键 选择 gitbash here 会弹出 黑色git操作对话框 在该对话框中输入git init 初始化创建好我们当前项目所管理目录仓库 此时当前目录下会产生一个 .git的文件夹(注意该文件夹为隐藏项目 有些同学看不到 需要设置自己电脑系统的文件夹选项 查看隐藏项目)该文件夹可以理解为我们备份时候存储仓库。

3.

有了仓库就可以开始进行版本控制也就是文件的备份了,在文件备份过程中首先要设置用户名,没有名字就无法记录 到底是谁提交的备份,所以每个人在使用git进行备份的时候都要进行一个设置用户名的过程才可以继续进行备份。设置用户名包括两个部分一个是设置username一个是设置 Email (ps:在这里可以理解为设置用户名密码的过程);

设置用户名指令:git config user.name “自己设置的用户名”

如果是该命令则表示 这个用户名只是针对于当前这个文件项目备份而言 如果 使用指令

git config --global user.name “xiaoming” 则表明我们使用的

然后设置邮箱 git config -- global user.email <u>“</u><u>1244@qq.com</u><u>”</u> (ps:在这里邮箱可以设置成假的但是一定要符合邮箱的格式并且要记住自己设置的内容)

注意在注册用户名的过程中如果使用了global代表当前这台计算机 所有的目录或者仓库在使用git进行提交管理的时候都是使用的当前设置的全局用户名 这样无需每次新建仓库都要进行设置用户名了;

4. 提交内容到仓库备份:

现在在mytest目录中创建一个新文件叫a.txt 并在a.txt文件中写入一定的内容 然后 在 mytest 目录下切到 git bash 命令框 输入 指令 git add ./a.txt 后回车执行 (ps:在输入文件名称过程中可以借助tab快捷键帮助我们把文件名补齐) 添加之后一定要记得进行提交 操作 指令 为

git commit -m “提交描述例如这是第一次提交 用来干嘛干嘛的 或者改了哪些内容等”


image.png
image.png

当操作文件过多或者过于频繁的时候我们忘记当前文件状态是否已经提交的时候可以通过指令git status 进行查看 当前目录下所有文件的提交状态;

git add ./ 指令 代表将当前目录下所有文件添加到某目录下
git commit --all -m “描述内容” 可以省去 add过程 直接把修改内容提交

5.git查看提交日志内容:

git log 指令 回车 可以查看 提交日志
会按照最后一次提交最先展示的顺序进行倒叙陈列 内容 每一次提交都会形成一个独一无二的commit序列码
Git log --oneline :可以查看精简日志

6.版本回退:

git reset --hard Head~0 在这里的数字0代表最最近一次提交也就是最后一次提交
此时我的文件内容恢复到第二次提交时候内容了;
如果提交了多次,有多个版本但是通过回退 回退到较为靠前的版本 则再执行git log指令的时候 只展示 前面的后面的版本不会展示但是不代表不存在;
通过版本号进行回退:每一次提交都有一个唯一的版本号(这里指的不是描述 是那个无序的序列码)指令为 git reset --hard 版本号
git reflog 指令 可以查看 上几次操作内容日志 可以看到每一次版本替换记录 并且对应有相应的提交版本号

7.git创建分支:

试想这样一种场景 我们在写代码 代码量比较多 只是写了一部分想提交,但是此时如果提交的话 其他同事如果更新会导致他们代码报错并且对方无所适从,遇到这种情形git提出分支的理念;
image.png

也就是说自己的这部分可以开辟一个分支只能自己使用 最终完成后提交的试试将该分支进行合并提交;
git branch dev :创建了一个叫做dev的分支
git branch :查看所有的分支
git checkout dev :切换到dev分支
操作步骤:先在dev分支中进行各种操作 当dev分支中的内容完成的时候 首先 添加add然后提交 。 然后切换到主分支 git checkout master 然后 通过 git merge dev 指令将 dev分支中的内容合并到我们的主master分支中;、
git branch -d dev :删除分支dev

8.可能会产生冲突情形:

当创建一个分支后提交但是忘记进行merge,但是切换到master分支修改后提交 此时就会产生冲突问题,遇到冲突问题要手动去解决冲突后再另行提交即可;

9.多用户协同工作:

image.png

我们希望的是:


image.png

这里就要讲到GitHub了 GitHub不是git工具,GitHub是一个网站确切说是一个平台,是一个“集思广益”“丰富多彩”的平台,几乎全世界的开发人员都在用github,我们可以把自己的代码上传到该平台,甚至作为开源内容供其他人使用,同样别人开源的内容我们也可以拿过来使用。在这里我们使用GitHub作为我们的“服务器”,大家每个人可以把自己写部分的代码上传到同一个GitHub平台同一个账号下同一个目录中,这样大家可以实现同时上传同时下载 版本统一等目标。通常情况下每个普通GitHub账号允许我们上传最大内容容量为2个G左右,建议只上传代码不上传无关代码内容东西。

注册GitHub网站,在GitHub上创建仓库作为开发时候组员放置备份项目仓库:

Github注册地址:<u>https://github.com/join?source=header-home</u>点击进行注册

注册后进行登录,完成登录后点击页面右上角加号:


image.png

选择new repository 创建一个新的仓库:


image.png

在该页面中添加一个库的名字(这里特地强调不建议使用中文以及中文符号例如句号等)
注意 仓库公有 私有的地方选择公有 不然 私有的各种收费..........

无需勾选initialize this repository with a readme 这里指的是创建好仓库的是给初始化一个说明书文件 这里不需要进行勾选;然后跳转到如下界面:


image.png

注意点击一下Https 此时后面对话框中会生成一个链接 内容 复制这个链接内容是我们需要的仓库地址;然后回到我们之前本地的git hash界面 在保证本地内容已经很好的提交了之后通过 git push 后面跟随刚才复制地址 master 这样一来就实现了 提交本地主分支代码到github的主分支功能。注意:如果是第一次操作 git push指令则会弹出需要输入用户名密码的提示内容,这里的用户名指的是 github的用户名 这里的密码指的是github的密码,只需输入一次即可;当然提交成功后在github上也就能看到自己提交的内容了;

10.

其他人员想要使用上传到git的资源 需要使用pull指令进行下拉 ,具体指令为:
Git pull 资源地址 分支名字 这样就把相应分支下的代码 通过git下载到自己本地(前提是自己本地创建一个新目录 后要使用git init初始化本地仓库再去下拉)
除了下拉还有一种叫克隆指令 直接: git clone 地址 ,该指令会得到远程仓库完全相同的数据,多次使用会覆盖本地内容,所以不建议使用clone 建议使用pull ,pull指令在使用过程中会帮助或提醒我们有合并情况 但clone只是纯粹覆盖;

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,393评论 5 467
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,790评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,391评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,703评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,613评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,003评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,507评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,158评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,300评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,256评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,274评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,984评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,569评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,662评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,899评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,268评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,840评论 2 339

推荐阅读更多精彩内容

  • 如何关联远程库? 1.新建本地库 2.通过git官网新建远程库 3.输入指令: git remote add or...
    诸子大人阅读 16,399评论 1 9
  • Git 是目前最流行的分布式版本控制系统之一。 版本控制指的是,记录每次版本变更的内容和时间等细节,保留各版本之间...
    神齐阅读 1,384评论 0 7
  • 转载自:http://www.open-open.com/lib/view/open1414396787325.h...
    Bbooo阅读 406评论 0 3
  • 一:Git是什么? Git是目前世界上最先进的分布式版本控制系统。 二:SVN与Git的最主要的区别? SVN...
    JSXL阅读 1,815评论 0 2
  • 文章来源: http://www.admin10000.com/document/5374.html 版权归属:涂...
    IT码哥阅读 268评论 0 0