欢迎使用CSDN-markdown编辑器
来源:互联网 发布:js定义关联数组 编辑:程序博客网 时间:2024/06/01 19:18
GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流
<div class="article_manage clearfix"> <div class="article_r"> <span class="link_postdate">2016-09-07 14:57</span> <span class="link_view" title="阅读次数">58人阅读</span> <span class="link_comments" title="评论次数"> <a href="#comments" onclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_pinglun'])">评论</a>(0)</span> <span class="link_collect tracking-ad" data-mod="popu_171"> <a href="javascript:void(0);" onclick="javascript:collectArticle('GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流','52459669');return false;" title="收藏" target="_blank">收藏</a></span> <span class="link_report"> <a href="#report" onclick="javascript:report(52459669,2);return false;" title="举报">举报</a></span> </div></div><div class="embody" style="display:none" id="embody"> <span class="embody_t">本文章已收录于:</span> <div class="embody_c" id="lib" value="{"err":0,"msg":"ok","data":[]}"></div></div><style type="text/css"> .embody{ padding:10px 10px 10px; margin:0 -20px; border-bottom:solid 1px #ededed; } .embody_b{ margin:0 ; padding:10px 0; } .embody .embody_t,.embody .embody_c{ display: inline-block; margin-right:10px; } .embody_t{ font-size: 12px; color:#999; } .embody_c{ font-size: 12px; } .embody_c img,.embody_c em{ display: inline-block; vertical-align: middle; } .embody_c img{ width:30px; height:30px; } .embody_c em{ margin: 0 20px 0 10px; color:#333; font-style: normal; }</style><script type="text/javascript"> $(function () { try { var lib = eval("("+$("#lib").attr("value")+")"); var html = ""; if (lib.err == 0) { $.each(lib.data, function (i) { var obj = lib.data[i]; //html += '<img src="' + obj.logo + '"/>' + obj.name + " "; html += ' <a href="' + obj.url + '" target="_blank">'; html += ' <img src="' + obj.logo + '">'; html += ' <em><b>' + obj.name + '</b></em>'; html += ' </a>'; }); if (html != "") { setTimeout(function () { $("#lib").html(html); $("#embody").show(); }, 100); } } } catch (err) { } });</script> <div class="category clearfix"> <div class="category_l"> <img src="http://static.blog.csdn.net/images/category_icon.jpg"> <span>分类:</span> </div> <div class="category_r"> <label onclick="GetCategoryArticles('6264377','qq_27376871','top','52459669');"> <span onclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_fenlei']);">管理工具<em>(15)</em></span> <img class="arrow-down" src="http://static.blog.csdn.net/images/arrow_triangle _down.jpg" style="display:inline;"> <img class="arrow-up" src="http://static.blog.csdn.net/images/arrow_triangle_up.jpg" style="display:none;"> <div class="subItem"> <div class="subItem_t"><a href="http://blog.csdn.net/qq_27376871/article/category/6264377" target="_blank">作者同类文章</a><i class="J_close">X</i></div> <ul class="subItem_l" id="top_6264377"> </ul> </div> </label> </div></div><script type="text/javascript" src="http://static.blog.csdn.net/scripts/category.js"></script>
目录(?)[+]
- 一 Git介绍
- 工具原料
- 方法步骤1 在GitHub新建托管项目
- 方法步骤2 上传项目至GitHub
- 二 Git通用客户端msysgit
- 下载Git客户端
- 安装Git客户端
- 配置GitHub
- 1 创建本地ssh
- 2 将ssh配置到GitHub中
- 3 配置本地用户和邮箱
- Git Bash提交源码到GitHub
- 1 GitHub中创建一个工程
- 2 初始化git目录
- 3 添加文件
- 4 提交缓存
- 5 将Git本地缓存提交到GitHub中
- 三 Git的一些用法
- gitignore文件
- 标签使用Tag
- 分支和合并
- 1 查看现存分支
- 2 创建分支
- 3 切换分支
- 4 提交分支
- 5 分支合并移除
- 6 删除分支
- Git工作流程
- 1 两种工作流程
- 2 简单示例
- 1 独立开发示例
- 2 协作开发示例
最近听同事说他都在使用GitHub,GitHub是程序员的社区,在里面可以学到很多书上学不到的东西,所以最近在准备入手这方面的知识去尝试学习,正好碰到这么详细完整的文章,就转载了,希望对自己和大家有帮助。
自从google code关闭了下载服务了之后,GitHub作为了目前最好用的免费开源项目托管站点,众多开源项目都托管在github,其中不乏著名的播放器MPC-HC。
不习惯于英文的朋友,难免少不了要进行摸索一番,甚至会因此头大而放弃。
这里将手把手地教大家一些本人的入门心得。
GitHub操作总结 : 总结看不明白就看下面的详细讲解.
GitHub操作流程 :
第一次提交 :
方案一 : 本地创建项目根目录, 然后与远程GitHub关联, 之后的操作一样;
– 初始化Git仓库 :git init ;
– 提交改变到缓存 :git commit -m ‘description’ ;
– 本地git仓库关联GitHub仓库 : git remote add origin git@github.com:han1202012/TabHost_Test.git ;
– 提交到GitHub中 : git push -u origin master ;
方案二 : 方案二就是不用关联GitHub仓库, 直接从GitHub冲克隆源码到本地, 项目根目录也不用创建;
– 从GitHub上克隆项目到本地 :git clone git@github.com:han1202012/NDKHelloworld.git , 注意克隆的时候直接在仓库根目录即可, 不用再创建项目根目录 ;
– 添加文件 :git add ./* , 将目录中所有文件添加;
– 提交缓存 :git commit -m ‘提交’;
– 提交到远程GitHub仓库 : git push -u origin master ;
之后修改提交 :
– 与GitHub远程仓库同步 :git pull ;
– 查看文件变更 : git status ;
– 提交代码到本地缓存 : git commit -m ‘description’;
–提交代码到远程GitHub仓库 :git push ;
.gitignore用法 : 开放模式 注明忽略的文件 直接列出文件名, 保守模式 注明保留的文件 !文件名 ;
Git标签操作 : 轻量级标签, 带注释标签;
–查看标签 :git tag ;
–添加标签 : 轻量级标签git tag tagName , 带注释标签git tag -a tagName -m ‘description’ ;
–删除标签 :git tag -d tagName ;
–提交标签到GitHub中 : git push origin –tags ;
Git分支操作: 创建分支后, 分支操作不会影响master分支, 但是master分支改变会影其它分支;
–列出分支 :git branch ;
–切换分支 :git checkout master ;
–提交分支 : git push origin branchName ;
–删除分支 : git branch -d branchName , 强制删除分支 git branch -D branchName ;
–合并分支 : git merge branchName ;
一. Git介绍
分布式 : Git版本控制系统是一个分布式的系统, 是用来保存工程源代码历史状态的命令行工具;
保存点 : Git的保存点可以追踪源码中的文件, 并能得到某一个时间点上的整个工程项目额状态; 可以在该保存点将多人提交的源码合并, 也可以会退到某一个保存点上;
Git离线操作性 :Git可以离线进行代码提交, 因此它称得上是完全的分布式处理, Git所有的操作不需要在线进行; 这意味着Git的速度要比SVN等工具快得多, 因为SVN等工具需要在线时才能操作, 如果网络环境不好, 提交代码会变得非常缓慢;
Git基于快照 : SVN等老式版本控制工具是将提交点保存成补丁文件, Git提交是将提交点指向提交时的项目快照, 提交的东西包含一些元数据(作者, 日期, GPG等);
Git的分支和合并 : 分支模型是Git最显著的特点, 因为这改变了开发者的开发模式, SVN等版本控制工具将每个分支都要放在不同的目录中, Git可以在同一个目录中切换不同的分支;
分支即时性 : 创建和切换分支几乎是同时进行的, 用户可以上传一部分分支, 另外一部分分支可以隐藏在本地, 不必将所有的分支都上传到GitHub中去;
分支灵活性 : 用户可以随时 创建 合并 删除分支, 多人实现不同的功能, 可以创建多个分支进行开发, 之后进行分支合并, 这种方式使开发变得快速, 简单, 安全;
工具/原料
- 本地源项目
- msysgit(Windows)
方法/步骤1 在GitHub新建托管项目
要托管到github,那你就应该要有一个属于你自己的github帐号,所以你应该先到github.com注册
打开浏览器
在地址栏输入地址:github.com
填写用户名、邮箱、密码
点击Sign up即可简单地注册
- 完成注册,进入github平台,
点击new repositories
新建一个新项目(你也可以加入到一个已有的项目)
新建项目的操作,其实很简单,输入项目名就可以直接Create了
如图
- 此时的界面,我想大家都应该很熟悉了。点击右边栏的剪切板图标,记录下你的项目地址。
方法/步骤2 上传项目至GitHub
首先你要在本地计算机中安装一个git客户端。
你可以直接使用GitHub客户端,也可以用其他。
因本人使用的是msysgit,所以这里以msysgit作为介绍(msysgit同样也是目前最为广泛及实用的工具之一)。
打开
msysgit.github.io
下载并安装最新版本的msysgit
安装完成后,进入到要托管的项目根目录,
右键启动Git Bash命令行
二. Git通用客户端(msysgit)
1. 下载Git客户端
Git客户端下载地址 :https://code.google.com/p/msysgit/downloads/list 将地址复制到浏览器栏即可下载.
2. 安装Git客户端
欢迎界面 : 直接下一步;
协议 : 必须接受;
安装位置 : 预留100M空间, 自定义安装位置;
选择安装组件 :也可以默认选择;
– 图标组件(Addition icons) : 选择是否创建快速启动栏图标 或者 是否创建桌面快捷方式;
– 桌面浏览(Windows Explorer integration) : 浏览源码的方法, 单独的上下文浏览 只使用bash 或者 只用Git GUI工具; 高级的上下文浏览方法 使用git-cheetah plugin插件;
– 关联配置文件 : 是否关联git配置文件, 该配置文件主要显示文本编辑器的样式;
– 关联shell脚本文件 : 是否关联Bash命令行执行的脚本文件;
– 使用TrueType编码 : 在命令行中是否使用TruthType编码, 该编码是微软和苹果公司制定的通用编码;
开始菜单快捷方式目录 : 设置开始菜单中快捷方式的目录名称, 也可以选择不再开始菜单中创建快捷方式;
设置环境变量 : 选择使用什么样的命令行工具, 一般情况下我们默认使用Git Bash即可, 默认选择;
– Git自带 : 使用Git自带的Git Bash命令行工具;
– 系统自带CMD : 使用Windows系统的命令行工具;
– 二者都有 : 上面二者同时配置, 但是注意, 这样会将windows中的find.exe 和 sort.exe工具覆盖, 如果不懂这些尽量不要选择;
选择换行格式 :
– 检查出windows格式转换为unix格式 : 将windows格式的换行转为unix格式的换行在进行提交;
– 检查出原来格式转为unix格式 : 不管什么格式的, 一律转为unix格式的换行在进行提交;
– 不进行格式转换 : 不进行转换, 检查出什么, 就提交什么;
开始安装 :
安装结束 : over;
3. 配置GitHub
修改Git Bash的配置 : 将Git Bash设置为快速编辑模式, 可以更好的使用该命令行工具 :
(1) 创建本地ssh
首先在本地创建ssh key;
$ ssh-keygen -t rsa -C "your_email@youremail.com"
后面的your_email@youremail.com
改为你在github上注册的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。
成功的话会在~/
下生成.ssh
文件夹,
进去,打开id_rsa.pub
,复制里面的key
。
- ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtT1YCeaNulpfC+ARqAWrCdfpi6CpW3gkGT0hp6Q8by7NnEfy4dah9CwSrNbWJH5eS4tiqckE+bdbSVNvAboFD1MtGZjtzE4GDweG/6J/SDYV/ADFN/RLWGb+5rQ8wMCjc/fODgLJDFxk1Fwk/TTqTcbtLab1toLcts3zGIW5DstA3RQ0CCX/sPew5m7vh7DcKXluj2TBd9hw== 13241153187@163.com
(2) 将ssh配置到GitHub中
选择左侧的SSH-KEY选项 :
点击右侧的Add SSH key :
将上面复制好的ssh-key复制进去 :
验证是否配置成功 :
使用命令 :了验证是否成功,在git bash下输入:
$ ssh -T git@github.com
如果是第一次的会提示是否continue,输入yes就会看到:You’ve successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。
接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。
(3) 配置本地用户和邮箱
用户名邮箱作用 : 我们需要设置一个用户名 和 邮箱, 这是用来上传本地仓库到GitHub中, 在GitHub中显示代码上传者;
$ git config --global user.name "your name"//设置用户名$ git config --global user.email "your_email@youremail.com"//设置邮箱
进入要上传的仓库,右键git bash,添加远程地址:
$ git remote add origin git@github.com:yourName/yourRepo.git
后面的yourName和yourRepo表示你再github的用户名和刚才新建的仓库,加完之后进入.git,打开config,这里会多出一个remote “origin”内容,这就是刚才添加的远程地址,也可以直接修改config来配置远程地址。
创建新文件夹,打开,然后执行 git init
以创建新的 git 仓库。
4. Git Bash提交源码到GitHub
(1) GitHub中创建一个工程
工程的https地址: https://github.com/han1202012/TabHost_Test.git .
工程的SSH地址 : git@github.com:han1202012/TabHost_Test.git .
GitHub提示生成的命令 :
– Create a new repository on the command line :
- touch README.md
- git init
- git add README.md
- git commit -m “first commit”
- git remote add origin git@github.com:han1202012/TabHost_Test.git
- git push -u origin master
– Push an existing repository from the command line :
- git remote add origin git@github.com:han1202012/TabHost_Test.git
- git push -u origin master
(2) 初始化git目录
使用命令 :
- git init
如果不执行这条命令, 就会出现错误 : fatal: Not a git repository (or any of the parent directories): .git .
(3) 添加文件
使用命令 :
- git add ./*
- warning: LF will be replaced by CRLF in AndroidManifest.xml.
- The file will have its original line endings in your working directory.
- warning: LF will be replaced by CRLF in bin/AndroidManifest.xml.
- The file will have its original line endings in your working directory.
- warning: LF will be replaced by CRLF in gen/shuliang/han/tabhost_test/BuildConfig.java.
将仓库中的所有文件添加到缓存中;
(4) 提交缓存
使用命令 :
- git remote add origin git@github.com:han1202012/TabHost_Test.git
将添加或者改变的内容提交到缓存中;
(5) 将Git本地缓存提交到GitHub中
使用命令 :
- git push -u origin master
执行该命令, 源码就被提交到了GitHub 中;
.
作者 :万境绝尘
转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/18812279
.
三. Git的一些用法
1. .gitignore文件
屏蔽文件 : .gitignore文件是告诉Git哪些目录或者文件需要忽略, 这些文件将不被提交;
常用场景 : 写完代码后会执行变异调试等操作, 使用 .gitignore 文件将这些编译后的文件屏蔽, 这些文件不需要Git工具进行管理;
Android中的.gitignore : 在Android中 bin 和 gen 两个目录可以忽略;
.gitignore位置 : 项目根目录下;
过滤模式 : Git中的 .gitignore 中有两种模式,开放模式 和保守模式,保守模式的优先级要高于开放模式;
开放模式 : 设置哪些文件 活 目录 被过滤, 凡是在文件中列出的文件或者目录都要被过滤掉;
– 过滤目录 : /bin/ 就是将bin目录过滤, 该文件下的所有目录和文件都不被提交;
– 过滤某个类型文件 : *.zip *.class 就是过滤zip 和 class 后缀的文件, 这些文件不被提交;
– 过滤指定文件 : /gen/R.Java, 过滤该文件, 该文件不被提交;
保守模式 : 设置哪些文件不被过滤, 凡是列在其中的文件都要完整的提交上去;
– 跟踪目录 : !/src , 该目录下的所有文件都要被提交;
– 跟踪某类文件 : !*.java , 凡是java文件都要保留;
– 跟踪指定文件 : !/AndroidManifest.xml , 该文件需要保留, 提交上去;
配置原则 : 一般情况下采用开放模式鱼保守模式共同使用;
eg : 一个目录下有很多目录和文件, 当我们只需要保留其中的一个文件的时候, 先用开放模式不保留这些文件, 然后用保守模式将这个文件留下来, 保守模式的优先级要高于开放模式;
2. 标签使用(Tag)
标签作用: 在开发的一些关键时期,使用标签来记录这些关键时刻, 例如发布版本, 有重大修改, 升级的时候, 会使用标签记录这些时刻, 来永久标记项目中的关键历史时刻;
查看标签: 列出的标签安装ASCII字母顺序确定, 排序没有很明确的意义;
– 列出所有的标签 :
- git tag
- git tag -l v1.*
标签分类 : Git中的标签分为 轻量级标签(lightweight) 和 带注释的标签(annotated), 一般情况下推荐使用带注释的标签, 如果标签是临时的可以采用轻量级标签;
– 轻量级标签 : 轻量级标签中的信息含量很少, 这种标签只代表某时刻代码的提交, 相当于指向这个提交的指针;
– 带注释标签 : 这种标签是一种校验和, 包含标签名, 邮箱, 日期, 标签信息, GPG签名 和 验证, 它相当于一个对象, 封装了这些信息;
创建标签 :
– 创建轻量级标签 : 这样的标签没有附带其它的信息;
- git tag v2.0
- git tag -a v2.1 -m ‘first version’
– 创建GPG私钥的注释标签 :
- git tag -s v2.1 -m ‘GPG version’
在本机上实验不成功 出现下面的错误 :
- Administrator@XRDPTJ9ILK6IWRA /storage/TabHost_Test (master)
- $ git tag -s v2.2 -m ‘GPG version’
- gpg: error loading `iconv.dll’: 找不到指定的模块。
- gpg: please see http://www.gnupg.org/download/iconv.html for more information
- gpg: keyblock resource `c:/Documents and Settings/Administrator/.gnupg\secring.g
- pg’: file open error
- gpg: keyblock resource `c:/Documents and Settings/Administrator/.gnupg\pubring.g
- pg’: file open error
- gpg: skipped “HanShuliang <13241153187@163.com>”: secret key not available
- gpg: signing failed: secret key not available
- error: gpg failed to sign the data
- error: unable to sign the tag
– 为之前的提交添加标签 : 先使用 git log –oneline 命令列出之前的提交, 会有一个七位的十六进制数进行标记, 使用git tag -a v3.1 f1bb97a 命令即可为这个提交添加标签;
- $ git log –oneline
- f1bb97a first commit
- git tag -a v3.1 f1bb97a
删除标签 : 使用命令 git tag -d 标签名 命令删除标签;
- git tag -d v0.1
验证标签 : 提交了GPG带注释标签才可以验证, 因为上面没有提交成功, 这里留下一个命令;
- git tag -v v1.0
共享标签 : 即将标签提交到GitHub中;
- git push origin –tags
3. 分支和合并
(1) 查看现存分支
查看现存分支 : git branch命令;
- git branch
从结果可以看出, 现在只有一个分支master;
(2) 创建分支
创建分支 : git branch 分之名称, 就可以创建一个分支, 创建完分支以后可以查看分支, 当前使用的分支会显示成为绿色, 前面带有 “*”, 如果不是当前使用的分支, 显示的是白色, 并且没有 “*” 前缀;
- git branch branch1
(3) 切换分支
切换分支 : git checkout 分支名称, 切换分支以后, 在分支进行操作,文件的改变不会体现在master主分支中, 主分支改变, 会体现在其它分支中;
- git checkout branch1
关于主分支和其它分支 :
– 分支编辑 : 现有两个分支 master 主分支, 和刚创建的branch1 分支, 切换到 branch1 分支, 在branch1 中创建一个文件 description_branch1.txt;
– 其它分支文件不会影响主分支 : 然后在切换回 master 主分支, 发现没有description_branch1.txt文件, 创建一个文件 description_master.txt;
– 主分支会影响其它分支 : 在切换回 branch1 分支中, 发现存在 description_master.txt文件;
.
对比过程 :
查看该工程项目分支情况 :
- git branch
– 分支结果 :
- branch1
- master
- git checkout branch1
- Switched to branch ‘branch1’
- ls
- AndroidManifest.xml ic_launcher-web.png res
- assets libs src
- bin proguard-project.txt
- gen project.properties
创建一个文件 :
- touch description_branch1.txt
添加这个文件到本地缓存 :
- git add description_branch1.txt
提交本地缓存 : 注意, 这里必须提交, 如果不提交缓存, 这个文件在主分支也会出现;
- git commit -m ‘add a description of branch1’
- [branch1 7f5785e] add a description of branch1
- 1 file changed, 0 insertions(+), 0 deletions(-)
- create mode 100644 description_branch1.txt
查看该分支下的文件 :
- ls
- AndroidManifest.xml libs
- assets proguard-project.txt
- bin project.properties
- <strong>description_branch1.txt</strong> res
- gen src
- ic_launcher-web.png
切换回主分支 :
- git checkout master
– 切换分支结果 :
- Switched to branch ‘master’
- Your branch is up-to-date with ‘origin/master’.
- ls
- AndroidManifest.xml ic_launcher-web.png res
- assets libs src
- bin proguard-project.txt
- gen project.properties
.
(4) 提交分支
提交分支命令 : 将本地的分支提交到 GitHub中;
- git push origin experiment
(5) 分支合并移除
合并分支命令 : 合并分支之后, 分支中有的文件在 主分支中也会显示, 相当于将branch1 分支中的文件拷贝了一份到master分支中;
- git merge branch1
- Updating f1bb97a..7f5785e
- Fast-forward
- description_branch1.txt | 0
- 1 file changed, 0 insertions(+), 0 deletions(-)
- create mode 100644 description_branch1.txt
.
(6) 删除分支
删除分支命令 :
- git branch -d branch1
强制删除分支命令 : 如果branch1 分支还没有被合并的话, Git是不允许删除这个分支的, 此时要想删除该分支, 就只能使用下面的命令强制删除该分支 :
- git branch -D branch1
4. Git工作流程
(1) 两种工作流程
协作开发工作流程 : 这种情况是最复杂的情况, 多人团队共同开发一个项目;
– 与远程仓库同步 : git pull ;
– 修改文件 : 添加 删除 修改文件;
– 查看变更 : git status ;
– 载入变更 :添加文件, 先使用git add fileName, 在使用 git commit -m ‘note’ 载入变更; 如果是删除 修改文件, 直接使用 git commit -m ‘note’ 提交;
– 重复 : 重复执行 修改文件 查看变更 载入变更 提交载入动作;
– 上传 : 使用 git push 命令将项目源码提交带GitHub中去;
单独开发工作流程 : 如果是个人独立开发, 仅追踪本地文件变更, 就不需要提交到服务器上, 因为Git是分布式的;
– 修改文件 :
– 提交变更 :
– 重复 :
(2) 简单示例
1> 独立开发示例
该示例不会上传, 仅在本地进行操作;
从GitHub中检出项目源码 : 注意, 检出的源码是根目录源码, 我们在总仓库的根目录检出即可,不同再为项目创建目录;
- git clone git@github.com:han1202012/AndroidPictureViewer.git
- Cloning into ‘AndroidPictureViewer’…
- remote: Counting objects: 86, done.
- remote: Compressing objects: 100% (62/62), done.
- remote: Total 86 (delta 3), reused 86 (delta 3)
- Receiving objects: 100% (86/86), 1.67 MiB | 109.00 KiB/s, done.
- Resolving deltas: 100% (3/3), done.
- Checking connectivity… done.
删除bin和gen目录 : 这两个目录是Android工程编译产生的临时文件, 没有必要上传到GitHub中去;
- rm -rf bin gen
- git status
- On branch master
- Your branch is up-to-date with ‘origin/master’.
- Changes not staged for commit:
- (use “git add/rm <file>…” to update what will be committed)
- (use “git checkout – <file>…” to discard changes in working directory)
- deleted: bin/AndroidManifest.xml
- deleted: bin/ImageView_Test.apk
- deleted: bin/classes.dex
- deleted: bin/res/crunch/drawable-xxhdpi/ic_launcher.png
- deleted: bin/resources.ap_
- deleted: gen/shuliang/han/imageview_test/BuildConfig.java
- deleted: gen/shuliang/han/imageview_test/R.java
- git commit -a
- [master e4377ba] delete bin and gen directory.
- 28 files changed, 2 insertions(+), 110 deletions(-)
- create mode 100644 .gitignore
- delete mode 100644 bin/AndroidManifest.xml
- delete mode 100644 bin/ImageView_Test.apk
- delete mode 100644 bin/classes.dex
- delete mode 100644 bin/resources.ap_
- delete mode 100644 gen/shuliang/han/imageview_test/BuildConfig.java
- delete mode 100644 gen/shuliang/han/imageview_test/R.java
2> 协作开发示例
与远程仓库同步 :
- git pull
– 如果其他人没有提交项目到GitHub上, 就会出现下面结果 :
- Already up-to-date.
修改文件后查看变更 :
- git status
- On branch master
- Your branch is ahead of ‘origin/master’ by 1 commit.
- (use “git push” to publish your local commits)
- nothing to commit, working directory clean
载入变更 : 如果有变更, 那么使用命令载入变更. 使用 git commit -a 或者 git add 命令;
– 添加文件 : 先使用 git add 文件名 来添加文件到缓存, 之后使用 git commit -m ” 命令提交代码到本地缓存;
– 删除改变文件 : 直接使用 git commit -m ”, 提交删除 或则 改变 到本地缓存;
提交项目源码到服务器 :
- git push
- warning: push.default is unset; its implicit value is changing in
- Git 2.0 from ‘matching’ to ‘simple’. To squelch this message
- and maintain the current behavior after the default changes, use:
- git config –global push.default matching
- To squelch this message and adopt the new behavior now, use:
- git config –global push.default simple
- See ‘git help config’ and search for ‘push.default’ for further information.
- (the ‘simple’ mode was introduced in Git 1.7.11. Use the similar mode
- ’current’ instead of ‘simple’ if you sometimes use older versions of Git)
- Counting objects: 4, done.
- Delta compression using up to 2 threads.
- Compressing objects: 100% (2/2), done.
- Writing objects: 100% (3/3), 292 bytes | 0 bytes/s, done.
- Total 3 (delta 1), reused 0 (delta 0)
- To git@github.com:han1202012/AndroidPictureViewer.git
- 1ddf8c7..e4377ba master -> master
查看GitHub中的源码情况 : gen 和 bin 目录果然被删除了;
文章转载自 http://blog.csdn.NET/vipzjyno1/article/details/22098621
http://www.runoob.com/w3cnote/git-guide.html
<div id="digg" articleid="52459669"> <dl id="btnDigg" class="digg digg_enable" onclick="btndigga();"> <dt>顶</dt> <dd>0</dd> </dl> <dl id="btnBury" class="digg digg_enable" onclick="btnburya();"> <dt>踩</dt> <dd>0</dd> </dl> </div> <div class="tracking-ad" data-mod="popu_222"><a href="javascript:void(0);" target="_blank"> </a> </div><div class="tracking-ad" data-mod="popu_223"> <a href="javascript:void(0);" target="_blank"> </a></div><script type="text/javascript"> function btndigga() { $(".tracking-ad[data-mod='popu_222'] a").click(); } function btnburya() { $(".tracking-ad[data-mod='popu_223'] a").click(); } </script>
- 上一篇PLSQL-Developer数据库连接工具使用方法
- 下一篇java堆、栈、字符串常量池
<div style="clear:both; height:10px;"></div> <div class="similar_article" style=""> <h4>我的同类文章</h4> <div class="similar_c" style="margin:20px 0px 0px 0px"> <div class="similar_c_t"> <label class="similar_cur"> <span style="cursor:pointer" onclick="GetCategoryArticles('6264377','qq_27376871','foot','52459669');">管理工具<em>(15)</em></span> </label> </div> <div class="similar_wrap tracking-ad" data-mod="popu_141" style="max-height:195px;"> <a href="http://blog.csdn.net" style="display:none" target="_blank">http://blog.csdn.net</a> <ul class="similar_list fl"><li><em>•</em><a href="http://blog.csdn.net/qq_27376871/article/details/52825437" id="foot_aritcle_52825437undefined5292864998253595" target="_blank" title="新随笔管理 解决-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment v">新随笔管理 解决-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment v</a><span>2016-10-15</span><label><i>阅读</i><b>9</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/qq_27376871/article/details/52551389" id="foot_aritcle_52551389undefined6206310120639333" target="_blank" title="这可能是最全的?Redis?集群方案介绍了">这可能是最全的?Redis?集群方案介绍了</a><span>2016-09-15</span><label><i>阅读</i><b>60</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/qq_27376871/article/details/52468830" id="foot_aritcle_52468830undefined786221687749177" target="_blank" title="Windows英文版GitHub客户端使用操作流程图文攻略教程现没中文版">Windows英文版GitHub客户端使用操作流程图文攻略教程现没中文版</a><span>2016-09-08</span><label><i>阅读</i><b>46</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/qq_27376871/article/details/52093216" id="foot_aritcle_52093216undefined8406696685251758" target="_blank" title="Ubuntu16.04最快捷搭建小型局域网Git服务器">Ubuntu16.04最快捷搭建小型局域网Git服务器</a><span>2016-08-02</span><label><i>阅读</i><b>119</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/qq_27376871/article/details/51693194" id="foot_aritcle_51693194undefined225463871092203" target="_blank" title="JXplorer 的简单使用">JXplorer 的简单使用</a><span>2016-06-16</span><label><i>阅读</i><b>62</b></label></li> </ul> <ul class="similar_list fr"><li><em>•</em><a href="http://blog.csdn.net/qq_27376871/article/details/52561489" id="foot_aritcle_52561489undefined3044420833675414" target="_blank" title="Git与GitHub使用">Git与GitHub使用</a><span>2016-09-17</span><label><i>阅读</i><b>66</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/qq_27376871/article/details/52485772" id="foot_aritcle_52485772undefined10059388800137326" target="_blank" title="一台电脑上的git同时使用两个github账户">一台电脑上的git同时使用两个github账户</a><span>2016-09-09</span><label><i>阅读</i><b>61</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/qq_27376871/article/details/52468795" id="foot_aritcle_52468795undefined8266721192292805" target="_blank" title="Github windows客户端简单使用教程">Github windows客户端简单使用教程</a><span>2016-09-08</span><label><i>阅读</i><b>39</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/qq_27376871/article/details/51698982" id="foot_aritcle_51698982undefined2691816994653007" target="_blank" title="Notepad++ 实用技巧">Notepad++ 实用技巧</a><span>2016-06-17</span><label><i>阅读</i><b>46</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/qq_27376871/article/details/51646955" id="foot_aritcle_51646955undefined956757902229523" target="_blank" title="7天学会Maven(第二天——Maven 标准目录结构)">7天学会Maven(第二天——Maven 标准目录结构)</a><span>2016-06-12</span><label><i>阅读</i><b>92</b></label></li> </ul> <a href="http://blog.csdn.net/qq_27376871/article/category/6264377" class="MoreArticle">更多文章</a></div> </div> </div> <script type="text/javascript"> $(function () { GetCategoryArticles('6264377', 'qq_27376871','foot','52459669'); });</script>
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- java中instanceof用法
- iOS开发面试知识点总结
- linux笔记-压缩及归档
- ssh新手整合的历程spring+springmvc+hibernate 以及其他 一点奇葩异常的解决过程
- 数据结构看书笔记(五)--串
- 欢迎使用CSDN-markdown编辑器
- SLIC原理简介及VLFeat代码示例
- Greenplum中内存设置不合理导致的报错
- CSS3小技巧之画图
- linux笔记-bash脚本编程(中)
- 使用者与群组
- 【PS】利用中性色绘制高亮光效果
- 获取gp表结构的函数
- Axis2开发WebService客户端 的3种方式