比方说,我有一个单一的文件,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的用例,但由于它是我已经熟悉的强大工具,我更愿意使用它而不是别的东西,如果有办法那样做的话.
更新:为了避免问题完全归结为相同的原始政策,我尝试在本地服务,所有资产来自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) 我想在他们自己的提交中提交我的所有空白更正,以保持其他一切纯净的空白更改.
使用类似的东西很容易过滤出空白差异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
解决掉,看看空白区别.但我想这是次要的.)
Ruby应用程序中的匿名模块可以用于什么目的?概念本身很容易掌握,但我无法想象你曾经使用过这样的东西.他们解决了什么问题?
我希望能够查看我的命令历史记录并了解我发出各种命令的上下文——换句话说,“我在哪个目录中?” 有多种方法可以实现这一点,但所有这些(我能想到的)都需要操纵 zsh 历史记录以添加(例如)带有 $(pwd) 结果的注释行。(我可以创建名为 cd & pushd & popd 等的函数,或者我可以使用 zsh 的 preexec() 函数和它的 period() 函数最多每 X 秒添加一次注释行,就在我发出命令之前,或者可能有其他方式。)
问题是,我不想直接操作历史文件并绕过 shell 的历史机制,但我想不出一种方法(例如,使用 fc 命令)在不实际输入的情况下向历史添加内容在命令行上。我怎么能这样做?
我对最近添加的一些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似乎也可以实现它.
Postgres之外的任何数据库是否都支持SQL/MED?
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) 很好的是Visual Studio Code具有多光标模式,并且很可能可以仅通过键盘访问它(尽管如果按照Mac上的本机UI模式工作会更好),但这是不同的物)。
但是,真正令人沮丧的是,它似乎需要使用鼠标才能摆脱它。
是否从本机退出多光标模式?
是否有任何可以绑定按键的命令?
是否有任何扩展允许您仅使用键盘退出多光标模式?
我经常将我完成的工作隐藏在新的(未跟踪的)文件中,并且我希望以后能够找到这项工作。找到它的明显方法似乎是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 …
VS Code 刚刚问我“您使用屏幕阅读器来操作 VS Code 吗?” 但它没有给我任何关于根据我的答案它会做什么的线索,我只能猜测。
我不使用屏幕阅读器,但我使用使用 macOS 辅助功能 API 的软件。我不希望 VS Code 打开仅对屏幕阅读器用户有用的模式,或禁用视觉用户的任何功能,但我也不想通过辅助功能 API 禁用对 VS Code 的访问。
在我看来,简单地问我问题并为我做出决定,就好像我无法做出决定,而不是向我解释它将做什么,这似乎是相当用户对抗的。
(如果它随后提出问题或建议,那么它就未能传达这一事实。)
如果 VS Code 认为您正在使用屏幕阅读器,它会破坏基本功能,因此我担心的问题不仅仅是假设的风险。
更新:我忘了提及我正在使用“Visual Studio Code - Insiders”而不是普通版本的 VS Code。我不知道这是否会改变什么。
git ×3
dynatable ×1
elixir ×1
history ×1
javascript ×1
jquery ×1
json ×1
postgresql ×1
ruby ×1
shell ×1
sql ×1
sql-med ×1
whitespace ×1
zsh ×1