git获取远程仓库代码
2016-08-30 19:59
309 查看
git操作
在用git获取OSChina的Android客户端源码时碰到一个问题,发现找到不到分支(只能看到master)后来才发现,的确只有一个分支,其余都是tag(标签)。(在github上一般都是分支,这里我想当然的去获取分支,结果是啥也没看到,但是readme上明明说有好多个版本的,结果发现这个资源只有一个master,里面还是个空的,代码全在各个tag中。)
关于tag和branch的理解:
tag就像是软件开发过程中的一个里程碑(或理解成一个点),branch是一条新的支路;
tag是静态的,branch要向前走,不断的更新;
稳定版本备份用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获取远程仓库代码
- git fetch 的简单用法:更新远程代码到本地仓库
- [Git]更新远程代码到本地仓库
- 【Git使用】强制推送代码到多个远程仓库
- GitHub入门与实践(2)掌握Git 5、从远程仓库获取
- git 将自己本地的代码建立分支推送到远程仓库
- git fetch 的简单用法:更新远程代码到本地仓库
- 【git】在git远程仓库中创建一个新项目并把本地代码提交上去
- git提交代码至远程仓库
- 【Git使用】强制推送代码到多个远程仓库
- 如何使用git命令同步代码到github或提交到多个远程仓库
- git fetch 的简单用法:更新远程代码到本地仓库
- git fetch 的简单用法:更新远程代码到本地仓库
- windows下使用GUI 把本地代码提交到git远程仓库
- git fetch 的简单用法:更新远程代码到本地仓库
- [转]git fetch更新远程代码到本地仓库
- git 获取远程分支代码到本地
- 用phpstorm、webstorm、git gui无法获取远程代码
- git命令行提交代码到远程仓库
- windows下使用GUI 把本地代码提交到git远程仓库