有没有办法使用命令git ls-files
,只显示未跟踪的文件?
我问的原因是因为我使用以下命令来处理所有已删除的文件:
git ls-files -d | xargs git rm
Run Code Online (Sandbox Code Playgroud)
对于未跟踪的文件,我想要类似的东西:
git some-command --some-options | xargs git add
Run Code Online (Sandbox Code Playgroud)
我能够找到-o
选项git ls-files
,但这不是我想要的,因为它也显示了被忽略的文件.我还能够提出以下长而丑陋的命令:
git status --porcelain | grep '^??' | cut -c4- | xargs git add
Run Code Online (Sandbox Code Playgroud)
似乎我必须在这里使用更好的命令.如果没有,我如何创建自定义git命令?
为什么这些例子中的第一个不起作用,但所有其他例子都不起作用?
// 1 - does not work
(function() {
setTimeout(someFunction1, 10);
var someFunction1 = function() { alert('here1'); };
})();
// 2
(function() {
setTimeout(someFunction2, 10);
function someFunction2() { alert('here2'); }
})();
// 3
(function() {
setTimeout(function() { someFunction3(); }, 10);
var someFunction3 = function() { alert('here3'); };
})();
// 4
(function() {
setTimeout(function() { someFunction4(); }, 10);
function someFunction4() { alert('here4'); }
})();
Run Code Online (Sandbox Code Playgroud) 我开始真的喜欢在代码中使用C#和Java枚举,原因如下:
但是,Android框架有许多情况需要传递各种类型的标志,但它们似乎都没有使用枚举.在那里我会认为他们的使用将是有益的一对夫妇的例子是Toast.LENGTH_SHORT
/ Toast.LENGTH_LONG
和View.GONE
,View.VISIBLE
等等.
为什么是这样?在Dalvik中,枚举的性能是否比简单的整数值差?还有其他一些我不知道的缺点吗?
昨天,我在GitHub上推送了ConnectBot的分支.我推了一次,意识到我没有按照我想要的方式进行更改,重新提交并再次推送.
现在,GitHub都提交了两个提交:
我的主分支只跟踪第二次提交,但第一次提交仍然可用,仍然在我的活动源中.如何删除它以确保没有人意外地提取该提交而不是更正的版本?
我对Greasemonkey的世界相当新,我想知道如何在JavaScript中创建一个按钮.
比如说我想在YouTube或Google上放一个按钮?我该如何调用它或制作它?
我很困惑,无法找到任何东西.除非有人与这些网站的HTML进行交互并将它们添加到Greasemonkey脚本中吗?
我目前需要一个自定义ListViewItem
类 - 让我们称之为MyListViewItem
.它需要有一些与每个项目关联的附加数据,并在更改Checked属性时执行一些操作.我尝试了几件事,但目前相关的代码如下所示:
class MyListViewItem : ListViewItem {
new public bool Checked {
get {
return base.Checked;
}
set {
base.Checked = value;
// do some other things here based on value
}
}
public MyListViewItem(Object otherData) {
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是,当我点击ListView中的项目复选框时,我的setter永远不会被调用.有谁知道我做错了什么?我知道我可以使用父ListView的ItemChecked事件,但这似乎是一个不那么干净的解决方案.(另外我实际上并没有将Object传递给构造函数,但这部分并不重要).
可能重复:
哪个集合用于存储唯一字符串?
我目前正在使用Dictionary <string,bool>来存储唯一标识符列表.这些标识符不需要有任何与之关联的数据 - 我只是使用Dictionary来快速检查重复项.
因为我只需要键,没有值,所以是一个字典是去这里的方式,还是有另一个我不知道的收藏品会更合适?
我习惯用C#编程,我想念Java的一件事是它似乎没有C#的内置事件处理能力:
// define event signature
public delegate void SomeEventHandler();
class SomeEventGenerator {
// define subscribable event property
public event SomeEventHandler SomeEvent;
protected void OnSomeEvent() {
if (SomeEvent != null) {
SomeEvent();
}
}
}
class SomeEventClient {
public SomeEventClient(SomeEventGenerator eg) {
// subscribe
eg.SomeEvent += new SomeEventHandler(eg_SomeEvent);
// do some stuff
// unsubscribe
eg.SomeEvent -= new SomeEventHandler(eg_SomeEvent);
}
private void eg_SomeEvent() {
// handle event
}
}
Run Code Online (Sandbox Code Playgroud)
在Java/Android中获得类似和轻量级的最佳方法是什么,它能够订阅/取消订阅多个事件客户端并立即调用所有订阅的客户端?
我已经注意到一些在C#中处理lambda函数和匿名委托时工作和不起作用的事例.这里发生了什么?
class Test : Control {
void testInvoke() {
// The best overloaded method match for 'Invoke' has some invalid arguments
Invoke(doSomething);
// Cannot convert anonymous method to type 'System.Delegate' because it is not a delegate type
Invoke(delegate { doSomething(); });
// OK
Invoke((Action)doSomething);
// OK
Invoke((Action)delegate { doSomething(); });
// Cannot convert lambda expression to type 'System.Delegate' because it is not a delegate type
Invoke(() => doSomething());
// OK
Invoke((Action)(() => doSomething()));
}
void testQueueUserWorkItem() {
// The best …
Run Code Online (Sandbox Code Playgroud) 编辑:我不确定我原来的问题是否足够明确.我需要一种算法来计算最小的移动顺序,以便将数组从一个顺序重新排列到另一个顺序.众所周知,两个数组都包含相同的元素(没有重复)并且具有相同的长度.例如:
reorder(
['d', 'a', 'c', 'b', 'e'],
['a', 'b', 'c', 'd', 'e']
)
Run Code Online (Sandbox Code Playgroud)
应该返回类似的东西:
[
{move:'d', after:'b'},
{move:'c', after:'b'}
]
Run Code Online (Sandbox Code Playgroud)
这表明我应该首先将元素'd'移动到'b'之后,然后将'c'移动到'b'之后,数组将按所需顺序移动.
背景:我正在研究一个项目(实际上将rtgui中的大部分功能转移到客户端).现在我正在进行排序.基本上我有一个div列表,我想按任意顺序排序.我可以按如下方式获得所需的订单:
var hashes = {
before: [],
after: [],
};
var els = $('div.interesting-class').toArray();
var len = els.length;
for(var i = 0; i < len; i++) hashes.before.push(els[i].id);
els.sort(getSortComparator());
for(var i = 0; i < len; i++) hashes.after.push(els[i].id);
Run Code Online (Sandbox Code Playgroud)
现在hashes.before
,hashes.after
包含无序和有序的元素ID列表.重新排序列表时,到目前为止,最昂贵的操作实际上是移动DOM元素.我这样做的情况如下:
var c = $('#container-id');
$(els).each(function() {
c.append(this);
});
Run Code Online (Sandbox Code Playgroud)
这可行,但速度比必要慢,因为平均来说,实际上只需要移动2或3个元素.因此,我需要一种算法来计算最小的移动顺序,以便将数组从一个顺序重新排列到另一个顺序(在这种情况下,操作hashes.before …
c# ×3
javascript ×3
android ×2
git ×2
algorithm ×1
button ×1
collections ×1
delegates ×1
dictionary ×1
diff ×1
enums ×1
events ×1
git-dangling ×1
git-ls-files ×1
git-rm ×1
git-stage ×1
git-status ×1
github ×1
greasemonkey ×1
inheritance ×1
java ×1
jquery ×1
lambda ×1
properties ×1
tampermonkey ×1