感谢大佬:https://www.cnblogs.com/imqsl/p/6763133.html

在使用studio开发的项目过程中有时候我们想将项目发布到github上,以前都是用一种比较麻烦的方式(cmd)进行提交,最近发现studio其实是自带这种功能的,终于可以摆脱命令行了。

因为自己也没有做很深的研究,这里就先分享一下通过studio将自己的项目上传到github上的步骤。

两个相关概念:Git和github

Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。

github作为开源代码库以及版本控制系统,它是一个网站,给用户提供git服务.这样你就不用自己部署git系统直接注册个账号,就可以用他们提供的git服务。GitHub可以托管各种git库,并提供一个web界面,GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“fork”的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。

准备

安装Androidstudio并新建一个工程;

安装git版本控制系统.如Git GUI;

在github网站上注册一个账号.

步骤

1 studio的git配置;

安装好git后启动Androidstudio,打开如下路径File->Settings->Version Control(展开)->git

在Path to Git executable后面的输入框输入你安装的git路径,如下图所示:

点击test按钮如果出现 Git executed successfully 对话框说明配置成功,同时对话框会显示你安装的git版本号;如下图所示

2 配置github登录信息;

打开如下路径File->Settings->Version Control(展开)->GitHub,如下图所示

填入如下信息:

Host:github.com

Login:你的github账户名

Password:你的github账户密码

填完之后点击test按钮,如果出现如下对话框说明配置成功,注意,新版的git的储存目录为 D:\Program Files\Git\cmd

3上传工程到github

打开你要上传的工程,顶部菜单选择VCS->Import into Version Control->Share Project on GitHub,如下图所示:

如果你是第一次提交该项目会出现如下对话框,提示你这是一个新的存储库(repo),可以自定义repo的名字,和添加描述。

填写完毕点击share按钮如果你的工程没有问题会出现如下界面

这里列出了将要提交的类,以及各种资源配置文件等等,点击ok按钮

注意:这一步容易出现上传失败,究其原因,是没有在git-bash中进行配置:

今天博主正在愉快地学习在AndroidStudio中使用Git,结果报了下面这个错∑(っ°Д°;)っ:

Can't finish GitHub sharing process

Successfully created project 'Demo' on GitHub, but initial commit failed:

*** Please tell me who you are. Run Git config --global user.email "you@example.com" git config --global user.name "Your Name" to set your account's default identity. Omit --global to set the identity only in this repository. fatal: empty ident name (for (null)>) not allowed during executing git -c core.quotepath=false commit -m "Initial commit" --

看了一下错误原因:Run git config --global user.email "you@example.com" git config --global user.name "

原来是git没有配置的原因,找到git安装目录下的Git Bash运行后输入下面两行代码即可:

    1. git config --global user.email "you@example.com"
    2. git config --global user.name "Your Name"

问题解决接着继续:

输入你的Master password点击ok,如果提交成功studio右上角会提示相关信息

此时打开你的github网站地址在你的repositories中会看到刚刚提交过的工程名称,点击进去会看到完整的提交工程,到此提交结束

项目更新

当项目新增了模块或者模块修改了如何更新github上的项目,其实也很简单。

1 如果你的项目新增了一个类,当你创建该类的时候会提示你是否需要加入git,如下图所示

选择yes该类就会加入git,同时该类本身的颜色会有改变(Darcula主题下由正常的白色变为绿色)

此时该类右击->Git->COmmit File... 出现如下对话框

填写 commit message 后点击Commit按钮,有可能会出现如下警告,忽略它点击Commit

再次右击->Git->Repository->Push,如下图所示

点击Push出现如下对话框,点击Pust按钮

此时打开你的github上的该项目源码,你会发现新增的类已经出现了

2 如果你的项目中某个类进行了修改需要重新提交;

右击该类->Git-Add

感觉这步没什么变化?其实不是,这步其实是吧该类加入到git中;

以后的步骤和新增类的操作一样,这里不再赘述。

让我们先看看Git 跟 GitHub 是什么关系? 
git是一个版本控制工具 
Github是一个用git做版本控制的项目托管平台。

如果要想在AndroidStudio将项目发布到Github上, 第一步当然是安装Git(Git for windows 下载地址)。

在此之前,一定要拥有Github的账号。

  1. 安装Git

     
    在windows安装Git很简单。只需要默认安装就可以。无需过多的配置。 
     
    需要教程的同学看这里 Windows下安装最新版Git

  • 配置AndroidStudio 中的Git 
    先创建一个Android测试项目 


    然后设置AndroidStudio 

    将git.exe路径配置好 
     
    将创建好的项目分享到Github 点击后去让你登陆Github 下图 
     
    登陆后 验证通过会跳出下个对话框 
     
    创建仓库 点击Share 
     
    点击OK这时候就可以把项目发布到GitHub上了 稍等一会 到GitHub 上看一下 是不是已经上传上来了呢? 

  • 接下来让我们创建个新文件 
     
    创建后 AndroidStudio会弹出下面对话框 这时候要点击Yes 
     
    在修改一下MainActivity ,作为测试用。 

    点击主面板上的 Commit Changes 按钮 并填写 提交信息 点击commit 。 

    继续点击commit 
     
    这时候 你会跑去GitHub上 看看有没有上传成功。 发现项目并没有改动 

    别着急,我们还需要一步操作 

    将项目push到 Github 
     
    点击Push 弹出下图后 在去网页端看看 ,是不是已经上传到Github上了 
     


    .gitignore 
    到这儿,已经将项目发布到Github上了,并且已经学会了提交。 此时,聪明的你也可能发现了,有些文档是没有必要提交到Github上的。那就要用到.gitignore

    来!让我们脑补一下 Android Studio项目应该提交哪些文件到GitHub上?

    #我用的是这份
    #built application files
    *.apk
    *.ap_

    # files for the dex VM

    *.dex

    # Java class files

    *.class

    # generated files

    bin/

    gen/

    # Local configuration file (sdk path, etc)

    local.properties

    # Windows thumbnail db

    Thumbs.db

    # OSX files

    .DS_Store

    # Eclipse project files

    .classpath

    .project

    # Android Studio

    .idea

    #.idea/workspace.xml - remove # and delete .idea if it better suit your needs.

    .gradle

    build/

    # Signing files

    .signing/

    # User-specific configurations

    .idea/libraries/

    .idea/workspace.xml

    .idea/tasks.xml

    .idea/.name

    .idea/compiler.xml

    .idea/copyright/profiles_settings.xml

    .idea/encodings.xml

    .idea/misc.xml

    .idea/modules.xml

    .idea/scopes/scope_settings.xml

    .idea/vcs.xml

    *.iml

    下次再提交的时候 AndroidStudio 会自动忽略掉不需要上传的文件。


    删除GitHub仓库 
    如何删除Github仓库呢 ? 很简单 

    点击setting 

    AndroidStudio项目提交到github最详细步骤【转】的更多相关文章

    1. AndroidStudio项目提交到github最详细步骤

      在使用studio开发的项目过程中有时候我们想将项目发布到github上,以前都是用一种比较麻烦的方式(cmd)进行提交,最近发现studio其实是自带这种功能的,终于可以摆脱命令行了. 因为自己也没 ...

    2. 将已有的项目提交到GitHub

      1.目的: 将已有的项目提交到GitHub 2.准备工作 2.1 此教程建立在对git有初步的理解上 2.2 此教程之前需准备工作 a.熟悉git的一些基本命令和原理. b.已注册有GitHub账号. ...

    3. 如何在windows上把你的项目提交到github(转载)

      (1)如何在windows上把你的项目提交到githubhttp://michaelye1988.iteye.com/blog/1637951 (2)github错误提示:fatal:remote o ...

    4. AndroidStudio项目提交(更新)到github最详细步骤

      在使用studio开发的项目过程中有时候我们想将项目发布到github上,以前都是用一种比较麻烦的方式(cmd)进行提交,最近发现studio其实是自带这种功能的,终于可以摆脱命令行了. 因为自己也没 ...

    5. AndroidStudio项目提交(更新)到github最具体步骤

      在使用studio开发的项目过程中有时候我们想将项目公布到github上.曾经都是用一种比較麻烦的方式(cmd)进行提交.近期发现studio事实上是自带这样的功能的,最终能够摆脱命令行了. 由于自己 ...

    6. Android Studio 快速实现上传项目到Github(详细步骤)

      前言: 本文主要讲解如何将Android Studio项目上传至GitHub,在此之前,先介绍几个概念. Android Studio:是谷歌推出一个Android集成开发工具,基于IntelliJ ...

    7. linux命令行将已有项目提交到github

      之前用git是在windows下用git的图形化界面进行操作的,这次有一个写了几天的小项目想提交到git上,linux命令行下面没有图形化的界面,所以全部需要git命令来操作. 实践之后,主要是下面几 ...

    8. 把IDEA中新建的项目提交到Github仓库中

      对于一个没有进行任何版本控制设置的idea工程,使其支持Github,设置步骤如下 到Git官网下载Git的安装包,安装好以后,Git的安装目录下的文件结构应该如下图所示 在IDEA开发工具中配置Gi ...

    9. 使用Git--将本地项目提交到Github

      前置工作 1. 在GitHub官网注册一个GitHub账号: 2. 安装git工具,在Git官网下载对应版本的Git: 方法一: 1. 进入Github首页,点击New repository新建一个项 ...

    随机推荐

    1. CS5216PIN TO PIN替换PS8402A方案|PS8402A电路设计原理图|CS5216芯片

      PS8402A是HDMI 电平移位器/中继器专为2型双模Display Port(DP++)电缆适配器应用而设计.它设计用于Display Port到DVI或Display Port到HDMI的2型适 ...

    2. 排列组合 "n个球放入m个盒子m"问题 总结

      求,盒子都可以分成是否不能区分,和能区分,还能分成是否能有空箱子,所以一共是8种情况,我们现在来一一讨论. 1.球同,盒不同,无空箱 C(n-1,m-1), n>=m0, n<m 使用插板 ...

    3. 关于 base64 编码

      一.什么是Base64编码 Base64是一种用64个字符来表示任意二进制数据的方法.它是一种编码方式,而非加密方式.它通过将二进制数据转变为64个"可打印字符",完成了数据在HT ...

    4. localstorage的浏览器支持情况

      localStorage的兼容性不错,就国内的情况,已经基本没有问题了.localStorage的原理很简单,浏览器为每个域名划出一块本地存储空间,用户网页可以通过localStorage命名空间进行 ...

    5. 编写Java程序,以树形结构显示国家-直辖市/省/州信息

      返回本章节 返回作业目录 需求说明: 以树形结构显示国家-直辖市/省/州信息 实现思路: 创建显示树形结构的类Tree,在该类中定义Map类型的全局实例属性countryMap,该Map集合用于存放所 ...

    6. 微信支付 V3 RSA 加签踩坑

      最近在做微信支付,根据微信官方文档上的要求 用RSA加签去请求支付窗口的调起,下面详细列举支付开发过程: 当前项目的流程大概是,前端根据后端要求提交数据------->拿到后台返回的prepay ...

    7. 最简短的 AC 自动机!

      写在前面 仍然是写给自己的,看不懂别怪我. 最简短的 AC 自动机! AC 自动机用于多模匹配. 模式串被插入一个添加了一些转移边的 Trie 中.在匹配的时候,若失配,则使下一个字符跳到该节点的 f ...

    8. Kubernetes-Kuboard

      前言 本篇是Kubernetes第十五篇,大家一定要把环境搭建起来,看是解决不了问题的,必须实战. Kubernetes系列文章: Kubernetes介绍 Kubernetes环境搭建 Kubern ...

    9. awk流程控制

      awk 中if和for while 一.awk嵌套if判断语句 格式如下: if(表达式) {语句1} else if(表达式) {语句2} else {语句3} 如果if后边的语句块是的单个语句,{ ...

    10. 怎样用命令行导入注册表 .reg 文件

      https://stackoverflow.com/questions/49676660/how-to-run-the-reg-file-using-powershell Get-Command re ...