git获取远程仓库代码

原创 2016年08月30日 19:59:33

git操作

在用git获取OSChina的Android客户端源码时碰到一个问题,发现找到不到分支(只能看到master)

后来才发现,的确只有一个分支,其余都是tag(标签)。(在github上一般都是分支,这里我想当然的去获取分支,结果是啥也没看到,但是readme上明明说有好多个版本的,结果发现这个资源只有一个master,里面还是个空的,代码全在各个tag中。)

关于tag和branch的理解:

  1. tag就像是软件开发过程中的一个里程碑(或理解成一个点),branch是一条新的支路;
  2. tag是静态的,branch要向前走,不断的更新;
  3. 稳定版本备份用tag,新功能开发用branch(开发完成后merge到master)。

SVN中也经常会用到tag,一般项目开发进度里规定的每个里程碑都需要发布相应的版本(供测试人员进行测试,或者其它用途),这时候就需要对外发布指定的tag。

首先在本地创建一个目录“open_source_app”,用来存放工程文件

进入该文件夹,执行

ZF_Chan@ZF_Chan_E440 MINGW32 /d/Demo/Android App Source/open_source_app (master)
$ git clone https://git.oschina.net/oschina/android-app.git
Cloning into 'android-app'...
remote: Counting objects: 36658, done.
remote: Compressing objects: 100% (9792/9792), done.
remote: Total 36658 (delta 23230), reused 35982 (delta 22682)
Receiving objects: 100% (36658/36658), 32.13 MiB | 1.64 MiB/s, done.
Resolving deltas: 100% (23230/23230), done.
Checking connectivity... done.

然后进入“android-app”文件夹下,执行git branch -a命令,查看所有的分支(本地的和远程的)

ZF_Chan@ZF_Chan_E440 MINGW32 /d/Demo/Android App Source/open_source_app/android-app (master)
$ git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master

执行git tag -l命令,查看所有的tag(标签)

ZF_Chan@ZF_Chan_E440 MINGW32 /d/Demo/Android App Source/open_source_app/android-app (master)
$ git tag -l
v1.6.2_beta
v1.7.0
v1.7.1_beta1
v1.7.1_beta2
v1.7.2
v1.7.3
v1.7.4
v1.7.7
v1.7.7.1
v2.2
v2.2.1
v2.3
v2.4
v2.6.2
v2.6.3
v2.6.4

使用git show <tag_name>查看指定tag的更多细节信息

ZF_Chan@ZF_Chan_E440 MINGW32 /d/Demo/Android App Source/open_source_app/android-app (master)
$ git show v2.2.1
commit e5f67022c82a4d84e65b8f8e95328a4d9afe4e9d
Author: 火蚁 <fireant.me@gmail.com>
Date:   Mon May 18 16:12:09 2015 +0800

帖子详情恢复举报功能

diff --git a/osc-android-app/src/net/oschina/app/fragment/PostDetailFragment.java b/osc-android-app/src/net/oschina/app/fragment/PostDetailFragment.java
index 6991783..e5901e0 100644
--- a/osc-android-app/src/net/oschina/app/fragment/PostDetailFragment.java
+++ b/osc-android-app/src/net/oschina/app/fragment/PostDetailFragment.java
@@ -71,6 +71,12 @@ public class PostDetailFragment extends BaseDetailFragment implements
 initViews(view);
 return view;
 }
+
+@Override
+public void onResume() {
+super.onResume();
+((DetailActivity) getActivity()).toolFragment.showReportButton();
+}

 private void initViews(View view) {
 mEmptyLayout = (EmptyLayout) view.findViewById(R.id.error_layout);

再获取执行的tag

ZF_Chan@ZF_Chan_E440 MINGW32 /d/Demo/Android App Source/open_source_app/android-app (master)
$ git fetch origin tag v2.2.1
版权声明:本文为博主原创文章,转载请注明出处。

相关文章推荐

git 获取指定的tag处代码

git 获取指定的tag处代码tag是对历史提交的一个id的引用,如果理解这句话就明白了tag的含义使用git checkout tag即可切换到指定tag,例如:git checkout v0.1....

Git更新远程仓库代码到本地 git fetch

当我们在多台电脑上开发一个项目的时候,需要经常修改提交内容并在另一台电脑上更新远程最新的代码,今天看了一下如何从远程代码仓库获取更新到本地,总结了一下网上的文章,采用如下的方式比较简单。   ...

项目管理---git----快速使用git笔记(四)------远程项目代码的首次获取

使用git最常见的场景是你需要参与到一个项目中,而这个项目的代码,同事已经上传到github或者https://coding.net了。这时候他会给你一个项目代码的远程仓库链接。例如: https:/...

git 查看远程仓库

查看当前项目有哪些远程仓库 $ git remote bixiaopeng@bixiaopengtekiMacBook-Pro wirelessqa$ git remote origin ...

confluence与jira的结合

简单的方式是先搭建jira,然后搭建confluence,在配置confluence时选择让他自动连接到jira。分开配置后再结合也可以,不过比较复杂,可能整合度没有自动结合高 Confluen...

堆和栈的区别(转过无数次的文章)

一、预备知识—程序的内存分配    一个由C/C++编译的程序占用的内存分为以下几个部分    1、栈区(stack)—   由编译器自动分配释放   ,存放函数的参数值,局部变量的值等。其    操...

git从远程仓库拉取代码的常用指令

其实我想说从git上拉代码布环境的血与泪。。。。。。。还没有写完。。to be continued。。。。。。一种(比较麻烦的)拉代码的方法git clone //克隆代码库,与远程代码库的主干建立连...

使用git将代码存入远程仓库github和从github上克隆代码到本地

git远程仓库的上传和下载

git 查看远程分支、本地分支、创建分支、把分支推到远程repository、删除本地分支

$ git branch -a * br-2.1.2.2 master remotes/origin/HEAD -> origin/master remotes/origin/br-2.1...

Git中pull对比fetch和merge

首先,我搜索了git pull和git fetch的区别,网上的帖子很多,我主要参考了http://www.tech126.com/git-fetch-pull/这个帖子,我摘抄下主要内容。 g...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)