相关疑难解决方法(0)

做一个"git export"(比如"svn export")?

我一直在想是否有一个很好的"git export"解决方案,它创建了一个没有.git存储库目录的树的副本.我知道至少有三种方法:

  1. git clone然后删除.git存储库目录.
  2. git checkout-index 提到这个功能,但开头是"只需将所需的树读入索引...",我不完全确定如何做.
  3. git-export是第三方脚本,基本上git clone进入临时位置,然后rsync --exclude='.git'进入最终目的地.

这些解决方案都没有让我感到满意.最接近的一个svn export选项可能是选项1,因为这两个都要求目标目录首先为空.但是假设我可以弄清楚将树读入索引意味着什么,选项2似乎更好.

git export svn-export git-archive

2312
推荐指数
24
解决办法
62万
查看次数

如何在Git中克隆单个分支?

我有一个名为'skeleton'的本地Git存储库,用于存储项目框架.它有一些分支,用于不同类型的项目:

casey@agave [~/Projects/skeleton] git branch
* master
  rails
  c
  c++
Run Code Online (Sandbox Code Playgroud)

如果我想查看一个新项目的主分支,我可以做

casey@agave [~/Projects] git clone skeleton new
Initialized empty Git repository in /Users/casey/Projects/new/.git/
Run Code Online (Sandbox Code Playgroud)

一切都是我想要的.具体来说,新的主分支指向骨架主分支,我可以推拉以移动对基本项目设置的更改.

但是,如果我想要克隆另一个分支,那么什么不起作用.我无法得到它,所以我只拉动我想要的rails分支,例如分支,然后新的存储库有一个master分支,rails默认情况下推送到骨架存储库的分支并从中拉出.

这有什么好办法吗?或者,也许这不是Git想要我构建事物的方式,我当然对此持开放态度.也许我应该有多个存储库,Ruby on Rails骨架存储库跟踪主骨架存储库?任何克隆Ruby on Rails骨架存储库的单个项目.

git branch git-clone

749
推荐指数
13
解决办法
66万
查看次数

从存储库中检索单个文件

从远程git存储库获取单个文件内容的最有效机制(关于传输的数据和使用的磁盘空间)是什么?

到目前为止,我已经设法提出:

git clone --no-checkout --depth 1 git@github.com:foo/bar.git && cd bar && git show HEAD:path/to/file.txt
Run Code Online (Sandbox Code Playgroud)

这仍然有点矫枉过正.

如何从回购中获取多个文件?

git git-checkout sparse-checkout git-sparse-checkout

206
推荐指数
11
解决办法
21万
查看次数

Git Clone:请给我一些文件?

我想克隆一个GIT仓库而不是最终得到一个.git目录.换句话说,我只想要文件.有没有办法做到这一点?

git clone --no-checkout与我想要的完全相反(给了我一个.git目录).

我试图为远程仓库而不是本地仓库做这个,这意味着这不是 " 如何做"git导出"(如"svn export") " 的重复 "(即使解决方案最终可能是相同).

git

129
推荐指数
5
解决办法
9万
查看次数

GitHub Api下载zip或tarball链接

这里有关于如何创建zip/tarball字符串的良好链接

当我从github下载一个zip时,文件名末尾的十六进制字符串代表什么?

但我正在看GitHub APIv3,如果我错过了什么,我很好奇.

  1. 有没有办法通过API调用获取zip/tarball链接?

  2. 如果没有,有没有办法可以在不使用git二进制文件或库的情况下构建该字符串?意思是,我可以使用各种AP​​I调用来提取需要的数据并汇编到我需要的URL吗?

我知道第二个问题对于stackoverflow来说有点不合理,这对我来说是一个有趣的项目,所以我更倾向于第二个问题,如果你只是把我推向正确的方向,而不是抛弃代码片段.或者只是告诉我是否有可能.

git github github-api

56
推荐指数
2
解决办法
7万
查看次数

git:symlink /对外部存储库中文件的引用

在git中是否可以在git仓库中拥有指向特定文件的"链接"?就像git子模块对文件夹所做的那样,但我的问题是关于特定文件,而不是完整目录:

my-project/
    class1.java
    class2.java
    logback.xml (link to a particular file, say https://github.com/theHilikus/JRoboCom/blob/master/jrobocom-core/src/main/resources/logback.xml)
Run Code Online (Sandbox Code Playgroud)

可以看出,在这种情况下,拥有一个完整的子模块文件夹是没有意义的,它只是一个文件.
我很好,链接被锁定到一个特定的提交,但如果它在它自己的项目的生命周期中发生变化,它会更好

需要注意的是,这与文件系统的符号链接无关; 我在谈论对另一个项目,repo,branch或任何东西中的文件的引用.如果文件的内容是重复的而不是文件系统符号链接,那就没问题

git

29
推荐指数
1
解决办法
2万
查看次数

Bash - 如何解压缩管道zip文件(来自"wget -qO-")

有关如何解压缩管道zip文件的任何想法,如下所示:

wget -qO- http://downloads.wordpress.org/plugin/akismet.2.5.3.zip
Run Code Online (Sandbox Code Playgroud)

我希望将文件解压缩到一个目录,就像我们以前使用普通文件一样:

wget -qO- http://downloads.wordpress.org/plugin/akismet.2.5.3.zip | unzip -d ~/Desktop
Run Code Online (Sandbox Code Playgroud)

bash wget unzip xargs

24
推荐指数
6
解决办法
3万
查看次数

Git:如何直接从远程存储库存档?

我通常使用下面的命令project.git来获取指定目标中的存档:

git archive master | tar -x -C /home/kave/site/
Run Code Online (Sandbox Code Playgroud)

我想知道是否可以直接从远程存储库归档到目标目录?

我尝试过这样的事情,没有任何乐趣:

git archive master https://kave@dndigital.git.cloudforge.com/myoproject.git | tar -x -C /home/kave/site/
Run Code Online (Sandbox Code Playgroud)

有什么建议?谢谢

git

24
推荐指数
1
解决办法
3万
查看次数