git使用技巧整理

一、如何仅下载git仓库的某个文件夹

我们常常需要在github上下载一些源码,但由于有的项目库本身比较大,或者我们本身的网速比较慢,经常会下载失败或等待比较长的时间,这个时候我们会想能不能只下载特定文件夹的内容呢?答案肯定是可以的,下面介绍如何操作。

逐条输入以下的命令(请忽略行号):
1 mkdir myfolder && cd myfolder
2 git init
3 git remote add -f origin https://github.com/loyinglin/GPUImage.git
4 git config core.sparsecheckout true
5 echo Tutorial-08 >> .git/info/sparse-checkout
6 git pull origin master

解释一下:
第1行:本地建立一个文件夹
第3行:"https://github.com/loyinglin/GPUImage.git" 是你要下载的库的地址
第4行:启用过滤功能
第5行:将Tutorial-08这个关键字加入过滤列表,如果有其他关键字可以多次运行该命令,关键字是文件夹或文件皆可
第6行:拉取代码

二、如何迁移git仓库

由于公司的git服务器要搬迁,需要将原来的git仓库迁移到新的地址,但是不能丢失原先的所有提交记录和分支信息。

三个步骤解决这个问题
git clone --bare http://旧域名/分组/仓库名称.git
cd 仓库名称.git
git push --mirror http://新域名/新分组/新仓库名称.git

三、误删本地文件后Git从远程仓库重新获取【待完成】

四、分支的克隆、查看和切换

1、克隆整个项目(包含了所有分支)
git clone https://github.com/iview/iview-admin.git
git clone 默认会把远程仓库整个给clone下来,但只会在本地默认创建一个master分支

2、仅克隆某个分支
git clone -b template https://github.com/iview/iview-admin.git //clone template分支

3、查看分支
git branch -a //查看所有分支
git branch -r //查看远程分支

举例:
cd iview-admin //切换到项目目录
git branch -a //列出所有分支名称如下: * 号表示当前分支

  • dev
    remotes/origin/HEAD -> origin/dev
    remotes/origin/desktop
    remotes/origin/dev
    remotes/origin/gh-pages
    remotes/origin/master
    remotes/origin/template

说明: origin/template, origin是远程仓库名,template是远程仓库的一个分支,由上结果可以看出,远程仓库origin还有desktop、dev、gh-pages、template、master等分支。

接下来,可以在本地新建分支并与远程仓库的分支进行关联了
git checkout -b template origin/template // 作用是checkout远程仓库origin的分支template,在本地起名为template分支,并切换到本地的template分支

4、切换分支
git checkout dev // 切换到dev分支

5、创建和删除分支
git branch xxx // 创建分支(基于当前分支创建)
git branch -d xxx //删除本地分支

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。