相关疑难解决方法(0)

在Git中撤消一个文件的工作副本修改?

在最后一次提交之后,我在工作副本中修改了一堆文件,但我想撤消对其中一个文件的更改,就像将其重置为与最近提交的状态相同.

但是,我只想撤消单独一个文件的工作副本更改,而不是其它任何内容.

我怎么做?

git version-control dvcs file undo

1550
推荐指数
11
解决办法
60万
查看次数

如何克隆仅Git存储库的子目录?

我有我的Git存储库,它在根目录下有两个子目录:

/finisht
/static
Run Code Online (Sandbox Code Playgroud)

当这是在SVN,/finisht在一个地方签出,而/static在其他地方查出来,像这样:

svn co svn+ssh://admin@domain.com/home/admin/repos/finisht/static static
Run Code Online (Sandbox Code Playgroud)

有没有办法用Git做到这一点?

git repository git-clone subdirectory sparse-checkout

1298
推荐指数
18
解决办法
73万
查看次数

如何从另一个分支中获取一个文件

我正在使用git并在master分支上工作.这个分支有一个名为的文件app.js.

我有一个experiment分支,我做了一堆变更和大量的提交.现在我希望把做只对所有变化app.jsexperimentmaster分支.

我怎么做?

再一次,我不想合并.我只是想把所有的变化app.jsexperiment分支带到master分支.

git git-checkout

1154
推荐指数
10
解决办法
51万
查看次数

从GitHub仓库下载单个文件夹或目录

如何从GitHub上托管的远程Git仓库中仅下载特定文件夹或目录?

举个例子说GitHub repo住在这里:

git@github.com:foobar/Test.git
Run Code Online (Sandbox Code Playgroud)

其目录结构:

Test/
??? foo/ 
?   ??? a.py
?   ??? b.py   
??? bar/
    ??? c.py
    ??? d.py
Run Code Online (Sandbox Code Playgroud)

我只想下载foo文件夹而不是克隆整个Test项目.

git directory file github repository

967
推荐指数
29
解决办法
60万
查看次数

使用ls列出目录及其总大小

是否有可能ls在Unix中使用列出子目录及其所有内容的总大小,而不是通常的4K(我假设)只是目录文件本身?IE

total 12K
drwxrwxr-x  6 *** *** 4.0K 2009-06-19 10:10 branches
drwxrwxr-x 13 *** *** 4.0K 2009-06-19 10:52 tags
drwxrwxr-x 16 *** *** 4.0K 2009-06-19 10:02 trunk
Run Code Online (Sandbox Code Playgroud)

在搜索了这些手册页后,我空洞地说.

unix linux

779
推荐指数
12
解决办法
71万
查看次数

如何在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是否能够很好地使用这种类型的存储库,因为它支持稀疏检出,但我能找到的每个示例都执行以下操作:

git clone <path>
git config core.sparsecheckout true
echo <dir> > .git/info/sparse-checkout
git read-tree -m -u HEAD
Run Code Online (Sandbox Code Playgroud)

这个命令序列的问题是原始克隆也执行结帐.如果将-n添加到原始克隆命令,则read-tree命令会导致以下错误:

错误:稀疏结账不会在工作目录上留下任何条目

如何在不先检出所有文件的情况下进行稀疏结账?

git

159
推荐指数
12
解决办法
11万
查看次数

在Git中查看子目录?

是否可以在Git中检出存储库的子目录?

想象一下,我正在设置一个新的WordPress安装.我将为我的插件和主题自定义创建两个新目录:

  • wordpress/wp-content/plugins/myplugins/
  • wordpress/wp-content/themes/mytheme/

我想通过Git维护这些目录.在Subversion中,我将通过拥有trunk/myplugins/trunk/mytheme/目录并检查子目录来实现这一目标.Git是否有办法使用单个存储库完成相同的任务?

我可能只是在一些Git范例中错过了这条船,因为很长一段时间的SVN用户很少接触Git.

编辑: 存储不同内容的多个分支是处理此问题的有趣方式.

git sparse-checkout

154
推荐指数
5
解决办法
12万
查看次数

如何从Git中的服务器存储库中提取单个文件?

我正在使用运行Git的服务器的网站上工作.我正在使用Git进行部署(而不是GitHub).这是在我参与使用钩子方法之前设置的,我参考了这个问题并输入了下面的命令,但它没有用.

基本上,我如何从服务器中提取单个文件?例如,如果我想更新我的本地文件index.php?git pull index.php

git git-pull git-merge git-fetch

93
推荐指数
5
解决办法
20万
查看次数