欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > Android >内容正文

Android

Android开发工具:Git,Github,GitBook

发布时间:2025/4/16 Android 80 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Android开发工具:Git,Github,GitBook 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

从0开始学习GitHub系列

原文链接:http://blog.csdn.net/column/details/13170.html,原创发布于微信公众号 AndroidDeveloper「googdev」

  • 从0开始学习 GitHub 系列之「01.初识 GitHub」
  • 从0开始学习 GitHub 系列之「02.加入 GitHub」
  • 从0开始学习 GitHub 系列之「03.Git 速成」
  • 从0开始学习 GitHub 系列之「04.向GitHub 提交代码」
  • 从0开始学习 GitHub 系列之「05.Git 进阶」
  • 从0开始学习 GitHub 系列之「06.团队合作利器 Branch」
  • 从0开始学习 GitHub 系列之「07.GitHub 常见的几种操作」
  • 从0开始学习 GitHub 系列之「08.如何发现优秀的开源项目」
  • 使用GIT FLOW管理开发流程
  • gitflow
  • 从 0 开始学习 GitHub 电子书免费送
  • GitHub秘籍
  • Github使用指南
  • 常用 Git 命令清单
  • 送你一份学习Git的最佳资料,关于Git看这几份资料足够了,请叫我良心张,赞赏、点击广告都是我坚持更新的最大动力!

  • ProGit中文版:https://git-scm.com/book/zh/v2

  • 廖雪峰的Git教程: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

  • Git简易指南:http://rogerdudler.github.io/git-guide/index.zh.html

  • GitHub 系列电子书免费获取地址:http://pan.baidu.com/s/1gfn3U2v ,希望能对你有帮助。除了赞赏之外,你还可以随手点赞、点击下广告,也是对我的支持与认可,希望 17 年继续加油,一起努力!

    一、Git与Github简介

    1、Git简介

    Git是用于Linux内核开发的版本控制工具。与CVS、Subversion一类的集中式版本控制工具不同,它采用了分布式版本库的作法,不需要服务器端软件,就可以运作版本控制,使得源代码的发布和交流极其方便。Git的速度很快,这对于诸如Linux内核这样的大项目来说自然很重要。

    • Git是一款免费、开源的分布式版本控制系统
    • Git可以有效、高速的处理从很小到非常大的项目版本管理。
    • Git最初由 Linux 之父 Linus Trovalds(林纳斯·托瓦兹) 开发,用作Linux内核代码的管理。
    • 官网:https://git-scm.com

    Git的优势

    • 分布式,强调个体
    • 公共服务器压力和数据量都不会太大
    • 速度快、灵活
    • 任意两个开发者之间可以很容易的解决冲突
    • 离线工作

    2、Github简介

    • Github是全球最大的社交编程及代码托管网站(https://github.com/)。
    • Github可以托管各种git库,并提供一个web界面。
    • Github作为开源代码库以及版本控制系统,Github拥有百万开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。如,国内知名互联网公司的开源项目:
      • 阿里 https://github.com/alibaba
      • 腾讯 https://github.com/AlloyTeam
      • 百度 https://github.com/baidufe

    3、Github影响力

    全球顶级科技公司纷纷加入 GitHub ,并贡献他们自己的项目代码

    • Google:https://github.com/google
    • 苹果:https://github.com/apple
    • Facebook:https://github.com/facebook
    • Twitter:https://github.com/twitter
    • 微软:https://github.com/microsoft
    • Square:https://github.com/square
    • 阿里:https://github.com/alibaba

    全球顶级开源项目都优先选择在 GitHub 上开源

    • Linux:https://github.com/torvalds/linux
    • Rails:https://github.com/rails/rails
    • Nodejs:https://github.com/nodejs/node
    • Swift:https://github.com/apple/swift
    • CoffeeScript:https://github.com/jashkenas/coffeescript
    • Ruby:https://github.com/ruby/ruby
    • laravel:https://github.com/laravel/laravel

    全球顶级编程大牛加入GitHub

    Linux 发明者 Linus Torvalds:https://github.com/torvalds

    二、使用Github

    1、基本概念

    仓库(Repository)

    仓库的意思,即你的项目,你想在 GitHub 上开源一个项目,那就必须要新建一个 Repository ,如果你开源的项目多了,你就拥有了多个 Repositories 。

    收藏(Star)

    仓库主页star按钮,意思为收藏项目的人数,在 GitHub 上如果你有一个项目获得100个star都算很不容易了!

    复制克隆项目(Fork)

    这个不好翻译,如果实在要翻译我把他翻译成分叉,什么意思呢?你开源了一个项目,别人想在你这个项目的基础上做些改进,然后应用到自己的项目中,这个时候他就可以 Fork 你的项目(打开项目主页点击右上角的fork按钮即可),然后他的 GitHub 主页上就多了一个项目,只不过这个项目是基于你的项目基础(本质上是在原有项目的基础上新建了一个分支),他就可以随心所欲的去改进,但是丝毫不会影响原有项目的代码与结构。

    发起请求(Pull Request)

    发起请求,这个其实是基于 Fork 的,还是上面那个例子,如果别人在你基础上做了改进,后来觉得改进的很不错,应该要把这些改进让更多的人收益,于是就想把自己的改进合并到原有项目里,这个时候他就可以发起一个 Pull Request(简称PR) ,原有项目创建人,也就是你,就可以收到这个请求,这个时候你会仔细review他的代码,并且测试觉得OK了,就会接受他的PR,这个时候他做的改进原有项目就会拥有了。

    关注(Watch)

    这个也好理解就是观察,如果你 Watch 了某个项目,那么以后只要这个项目有任何更新,你都会第一时间收到关于这个项目的通知提醒。

    事务卡片(Issue)

    发现代码BUG,但是目前没有成型代码,需要讨论时用;
    问题的意思,举个例子,就是你开源了一个项目,别人发现你的项目中有bug,或者哪些地方做的不够好,他就可以给你提个 Issue ,即问题,提的问题多了,也就是 Issues ,然后你看到了这些问题就可以去逐个修复,修复ok了就可以一个个的 Close 掉。

    Github主页

    账号创建成功或点击网址导航栏github图标都可进入github主页:该页左侧主要显示用户动态以及关注用户或关注仓库的动态;右侧显示所有的git库

    仓库主页

    仓库主页主要显示项目的信息,如:项目代码,版本,收藏/关注/fork情况等

    个人主页

    个人信息:头像,个人简介,关注我的人,我关注的人,我关注的git库,我的开源项目,我贡献的开源项目等信息

    2、注册github账号

    打开官网 github.com 注册

    3、创建仓库

    脚下留心:1、新注册的用户必须验证邮箱 2、一般情况一个git库对应一个项目

    4、个人中心

    注册成功或者每次登录都会进入个人中心显示对应的控制面板

    添加合作者

    三、Git安装和使用

    四、Git基本工作流程

    AllenIverson@AllenIverson MINGW64 ~/Desktop $ mkdir gittestAllenIverson@AllenIverson MINGW64 ~/Desktop $ cd gittestAllenIverson@AllenIverson MINGW64 ~/Desktop/gittest $ git init Initialized empty Git repository in C:/Users/AllenIverson/Desktop/gittest/.git/AllenIverson@AllenIverson MINGW64 ~/Desktop/gittest (master)

    Git工作区域

    实际开发目录

    • trunk,主分支 : 当前代码开发的目录
    • tags,里程碑: 发布的版本记录
    • branches,分支目录: bug的修复 ,新技术的研究(1,能否提供开发效率,2,能否提高软件的访问性能)

    Master 主线/主分支

    revert 恢复,checkout

    Git Repository(Git 仓库)

    最终确定的文件保存到仓库,成为一个新的版本,并且对他人可见

    暂存区

    暂存已经修改的文件,最后统一提交到git仓库中

    工作区(Working Directory)

    添加、编辑、修改文件等动作

    向仓库中添加文件流程

    命令

    git initgit config --global user.name 'name'git config --global user.email 'email'git config --listtouch test.javagit statusgit add test.javagit commit -m '提交描述'git pushlsrmviclear

    vim使用

    vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。

    命令模式下:

    :q 退出 :q! 强制退出 :wq 保存并退出

    Create/Apply Patch

    五、Git管理远程仓库

    git clone 仓库地址git push

    六、Github Pages 搭建网站

    七、AndroidStudio

    代码托管

    • GitHub
    • 开源中国
    • CSDN

    协同开发中Git的使用规范

    先更新,再提交

    Git更新的原则是要随时更新,随时提交。当完成了一个小功能,能够通过编译并且自己测试之后,谨慎地提交。

    如果在修改的期间别人也更改了Git的对应文件,那么commit就可能会失败。如果别人和自 己更改的是同一个文件,那么update时会自动进行合并,如果修改的是同一行,那么合并时会产生冲突,这种情况就需要同之前的开发人员联系,两个人一起协商解决冲突,解决冲突之后,需要两人一起测试保证解决冲突之后,程序不会影响其他功能。

    在更新时注意所更新文件的列表,如果提交过程中产生了更新,则也是需要重新编译并且完成自己的一些必要测试,再进行提交。这样既能了解别人修改了哪些文件,同时也能避免SVN合并错误导致代码有错。

    多提交

    每次提交的间歇尽可能地短,以几个小时的开发工作为宜。例如在更改UI界面的时候,可以每完成一个UI界面的修改或者设计,就提交一次。在开发功能模块的时候,可以每完成一个小细节功能的测试,就提交一次,在修改bug的时候,每修改掉一个bug并且确认修改了这个bug,也就提交一次。我们提倡多提交,也就能多为代码添加上保险。

    不要提交不能通过编译的代码

    代码在提交之前,首先要确认自己能够在本地编译。如果在代码中使用了第三方类库,要考虑到项目组成员中有些成员可能没有安装相应的第三方类库。项目经理在准备项目工作区域的时候,需要考虑到这样的情况,确保开发小组成员在签出代码之后能够在统一的环境中进行编译。

    每次提交必须书写明晰的标注

    在一个项目组中使用SVN,如果提交空的标注或者不确切的标注将会让项目组中其他的成员感到很无奈,项目经理无法很清晰的掌握工作进度,无法清晰的把握此次提交的概要信息。在发现错误后也无法准确的定位引起错误的文件。所以,在提交工作时,要填写明晰的标注,能够概要的描述所提交文件的信息,让项目组其他成员在看到标注后不用详细看代码就能了解你所做的修改。

    提交时注意不要提交本地自动生成的文件

    例如eclipse中的.classpath文件,Windows生成的缩略图Thumbs.db,项目编译生成的临时文件.obj, .class等等。如果项目中没有进行这方面的配置来强行禁止提交这样的文件,请自觉不要提交这样的文件。提交了这样的文件后,别人在更新后就可能与本地的环境冲突从而影响大家的工作。

    不要提交自己不明白的代码

    代码在提交入SVN之后,你的代码将被项目成员所分享。如果提交了你不明白的代码,你看不懂,别人也看不懂,如果在以后出现了问题将会成为项目质量的隐患。因此在引入任何第三方代码之前,确保你对这个代码有一个很清晰的了解。

    慎用锁定功能 在项目中要慎用锁定的功能,在你锁定了一个文件之后别人就无法继续修改提交该文件,虽然可以减少冲突的发生率,但是可能会影响项目组中其他人员的工作。平时只有在编辑那些无法合并的文件(例如图片文件,flash文件等)时,才适当的采用锁定操作。

    Git使用中遇到的问题

    fatal: The remote end hung up unexpectedly fatal: The remote end hung up unexpectedly error: RPC failed; curl 56 SSL read: error:00000000:lib(0):func(0):reason(0), errno 10054

    原因

    可能是上传文件过大

    解决方法

    git config http.postBuffer 524288000 git config --global http.postBuffer 524288000

    总结

    以上是生活随笔为你收集整理的Android开发工具:Git,Github,GitBook的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。