小编ico*_*ast的帖子

如何使用Git跟踪单个文件的版本?

比方说,我有一个单一的文件,foo.txt的,我想使用Git来管理,我希望它移动到自己的目录出来的(比方说)/用户/我/文档,其中也有一个大量其他文件我不想包含在foo.txt的回购中.这可能吗?

我尝试创建一个裸仓库(所以它不会被命名为.git):

git init --bare .foo.txt
Run Code Online (Sandbox Code Playgroud)

并计划通过在info/exclude文件中添加这样的内容来排除除foo.txt之外的所有内容:

*
!foo.txt
Run Code Online (Sandbox Code Playgroud)

但我遇到的问题是我甚git status至无法做到,因为似乎没有办法传递.git目录的非标准替换.

使用普通的.git目录是行不通的,因为它会限制我对这个文件进行版本控制,或者强迫我在同一个repo中包含任何其他文件,并且我希望能够在其目录中对其他文件进行版本化自己的回购.

我意识到这不是Git的用例,但由于它是我已经熟悉的强大工具,我更愿意使用它而不是别的东西,如果有办法那样做的话.

git

9
推荐指数
2
解决办法
2645
查看次数

从Dynatable加载远程JSON

更新:为了避免问题完全归结为相同的原始政策,我尝试在本地服务,所有资产来自http://localhost:4000使用服务.它没有解决问题.因此,由于相同的原始策略,编辑小提琴可能不起作用,但您可以在那里看到代码.


我正在尝试使用Dynatable加载外部JSON,跳过read/normalize步骤(从现有表生成JSON).这应该得到支持,但它对我不起作用.

这是我对JSFiddle的尝试.从文档中加载JSON(这对我来说似乎并不十分有用)工作正常,如小提琴中所见.但是从URL中提取它根本不起作用.

这是我的JavaScript:

// getting JSON from the document works, but of what use is that?
$(document).ready( function() {
    $('#local').dynatable({
        dataset: {
            records: JSON.parse($('#music').text())
        }
    });        
    // getting JSON from a remote source fails:
    $('#remote').dynatable({
        dataset: {
            ajax: true,
            ajaxOnLoad: true,
            ajaxUrl: '//www.dynatable.com/dynatable-ajax.json',
            records: []
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

...引用两个表,一个id为"local",另一个id为"remote",以及包含本地表数据的脚本:

<h3>Remote JSON: Failing</h3>
<table class="table table-striped" id="remote">
  <thead>
    <th>Some Attribute</th>
    <th>Some Other Attribute</th>
  </thead>
  <tbody>
  </tbody>
</table>
<hr>
<h3>Local JSON: Succeeding</h3>
<table …
Run Code Online (Sandbox Code Playgroud)

javascript jquery json dynatable

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

有没有办法用git diff显示*只*空白差异?

我想在他们自己的提交中提交我的所有空白更正,以保持其他一切纯净的空白更改.

使用类似的东西很容易过滤空白差异git diff

git diff --ignore-all-space --ignore-space-change --ignore-space-at-eol --ignore-blank-lines
Run Code Online (Sandbox Code Playgroud)

但是如何获得只有空格差异的列表?

(得到一个只有空格差异的文件列表也很有用,所以我可以add把它们全部都git add -p解决掉,看看空白区别.但我想这是次要的.)

git whitespace

9
推荐指数
1
解决办法
1902
查看次数

匿名模块可以用于什么目的?

Ruby应用程序中的匿名模块可以用于什么目的?概念本身很容易掌握,但我无法想象你曾经使用过这样的东西.他们解决了什么问题?

ruby ruby-on-rails activesupport ruby-on-rails-4

9
推荐指数
2
解决办法
179
查看次数

我如何(从脚本)向 zsh 命令历史添加一些东西?

我希望能够查看我的命令历史记录并了解我发出各种命令的上下文——换句话说,“我在哪个目录中?” 有多种方法可以实现这一点,但所有这些(我能想到的)都需要操纵 zsh 历史记录以添加(例如)带有 $(pwd) 结果的注释行。(我可以创建名为 cd & pushd & popd 等的函数,或者我可以使用 zsh 的 preexec() 函数和它的 period() 函数最多每 X 秒添加一次注释行,就在我发出命令之前,或者可能有其他方式。)

问题是,我不想直接操作历史文件并绕过 shell 的历史机制,但我想不出一种方法(例如,使用 fc 命令)在不实际输入的情况下向历史添加内容在命令行上。我怎么能这样做?

shell history zsh

8
推荐指数
1
解决办法
2250
查看次数

Postgres之外的数据库是否具有与外国数据包装器相当的功能?

我对最近添加的一些Postgres功能感到非常兴奋,比如外国数据包装器.我不知道有任何其他RDBMS有这个功能,但在我尝试向我的主客户端说明他们应该开始更喜欢Postgres而不是他们当前的RDBMS鸡尾酒,并且在我的情况下包括没有其他数据库可以做到这一点,我想验证一下.

我一直无法找到支持SQL/MED的任何其他数据库的证据,并且这样的简短说明表明Oracle不支持SQL/MED.

让我怀疑的主要问题是http://wiki.postgresql.org/wiki/SQL/MED上的声明:

SQL/MED是外部数据管理,是SQL标准的一部分,用于处理数据库管理系统如何集成存储在数据库外部的数据.

如果FDW基于SQL/MED,并且SQL/MED是开放标准,那么其他RDBMS似乎也可以实现它.

TL; DR:

Postgres之外的任何数据库是否都支持SQL/MED?

sql postgresql foreign-data-wrapper sql-med

8
推荐指数
1
解决办法
865
查看次数

在Elixir中打开模块?

Ruby有开放的类,非常方便(虽然受到一些人的谴责),Elixir大量借用Ruby,所以我希望Elixir允许我重新打开一个模块并在关闭后添加宏,但这不起作用我试过的方式.有办法做到这一点吗?Elixir中是否提供此功能?

为了具体化,让我们以Chris McCord的Metaprogramming Elixir为例:

defmodule Math do
  defmacro say({:+, _, [lhs, rhs]}) do 
    quote do
      lhs = unquote(lhs)
      rhs = unquote(rhs)
      result = lhs + rhs
      IO.puts "#{lhs} plus #{rhs} is #{result}"
      result
    end
  end

  defmacro say({:*, _, [lhs, rhs]}) do 
    quote do
      lhs = unquote(lhs)
      rhs = unquote(rhs)
      result = lhs * rhs
      IO.puts "#{lhs} times #{rhs} is #{result}" 
      result
    end 
  end
end
Run Code Online (Sandbox Code Playgroud)

如果我然后添加一个宏用于减法

defmodule Math do
  defmacro say({:-, _, [lhs, rhs]}) do
    quote do
      lhs    = unquote(lhs)
      rhs …
Run Code Online (Sandbox Code Playgroud)

elixir

8
推荐指数
1
解决办法
1322
查看次数

如何通过键盘在VSCode中“退出”多光标模式?

很好的是Visual Studio Code具有多光标模式,并且很可能可以仅通过键盘访问它(尽管如果按照Mac上的本机UI模式工作会更好),但这是不同的物)。

但是,真正令人沮丧的是,它似乎需要使用鼠标才能摆脱它。

是否从本机退出多光标模式?

是否有任何可以绑定按键的命令?

是否有任何扩展允许您仅使用键盘退出多光标模式?

visual-studio-code vscode-settings

8
推荐指数
2
解决办法
1048
查看次数

如何查看 Git 存储中未跟踪的文件

我经常将我完成的工作隐藏在新的(未跟踪的)文件中,并且我希望以后能够找到这项工作。找到它的明显方法似乎是git show

我刚刚发现,当我使用时,Git 完全忽略了这些文件git show(但幸运的是,在弹出隐藏代码时并没有忽略它们),这使得可靠地找到隐藏代码似乎是不可能的。

为了使这个更具体,假设我有

On branch feature/request-reappointment
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
    modified:   app/models/job.rb
    modified:   config/initializers/environmental_email_interceptor.rb

Untracked files:
  (use "git add <file>..." to include in what will be committed)
    app/models/receipt.rb
    db/migrate/20200130091050_create_receipts.rb

no changes added to commit (use "git add" and/or "git commit -a")
Run Code Online (Sandbox Code Playgroud)

如果我表演

git stash save -u 'miscellaneous improvements'
git show stash@{0}
Run Code Online (Sandbox Code Playgroud)

Git …

git

8
推荐指数
1
解决办法
835
查看次数

VS Code 对我的“您是否使用屏幕阅读器来操作 VS Code?”的回答做了什么?

VS Code 刚刚问我“您使用屏幕阅读器来操作 VS Code 吗?” 但它没有给我任何关于根据我的答案它会做什么的线索,我只能猜测。

我不使用屏幕阅读器,但我使用使用 macOS 辅助功能 API 的软件。我不希望 VS Code 打开仅对屏幕阅读器用户有用的模式,或禁用视觉用户的任何功能,但我也不想通过辅助功能 API 禁用对 VS Code 的访问。

在我看来,简单地问我问题并为我做出决定,就好像我无法做出决定,而不是向我解释它将做什么,这似乎是相当用户对抗的。

(如果它随后提出问题或建议,那么它就未能传达这一事实。)

如果 VS Code 认为您正在使用屏幕阅读器,它会破坏基本功能,因此我担心的问题不仅仅是假设的风险。

更新:我忘了提及我正在使用“Visual Studio Code - Insiders”而不是普通版本的 VS Code。我不知道这是否会改变什么。

询问屏幕阅读器使用情况的 VS Code 对话框的图像

screen-readers visual-studio-code

8
推荐指数
1
解决办法
2987
查看次数