我已经对作为一组文件的一部分提交了几次的文件进行了一些更改,但现在想要将其上的更改重置/还原到以前的版本.
我已经做了git log
一个git diff
找到我需要的修订版,但是根本不知道如何将文件恢复到以前的状态.
有时,git建议git rm --cached
取消暂存文件git reset HEAD file
.我什么时候应该使用哪个?
编辑:
D:\code\gt2>git init
Initialized empty Git repository in D:/code/gt2/.git/
D:\code\gt2>touch a
D:\code\gt2>git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# a
nothing added to commit but untracked files present (use "git add" to track)
D:\code\gt2>git add a
D:\code\gt2>git status
# On branch master
#
# Initial commit
#
# Changes to …
Run Code Online (Sandbox Code Playgroud) 我看到有趣的帖子解释了微妙之处git reset
.
不幸的是,我读的越多,我就越不能完全理解它.我来自SVN背景,Git是一个全新的范例.我很容易变得善变,但Git更具技术性.
我认为git reset
很接近hg revert
,但似乎存在差异.
究竟究竟做了git reset
什么?请包括以下详细说明:
--hard
,--soft
和--merge
;HEAD
如HEAD^
和HEAD~1
;HEAD
全球压力水平的影响.我认为它应该工作复制到被重命名为与所需名称的新目录的目录,并删除旧的目录,并且git add
, git commit
和push
一切.但这是最好的方法吗?
我需要逐行读取一个大文件.假设文件超过5GB,我需要读取每一行,但显然我不想使用,readlines()
因为它会在内存中创建一个非常大的列表.
以下代码如何适用于此案例?xreadlines
本身是一个一个地读入记忆吗?是否需要生成器表达式?
f = (line for line in open("log.txt").xreadlines()) # how much is loaded in memory?
f.next()
Run Code Online (Sandbox Code Playgroud)
另外,我可以做什么来以相反的顺序读取它,就像Linux tail
命令一样?
我发现:
http://code.google.com/p/pytailer/
和
两者都运作得很好!
我有一个巨大的向量,它有几个NA
值,我试图找到该向量中的最大值(向量是所有数字),但由于NA
值,我不能这样做.
如何删除NA
值以便我可以计算最大值?
我想知道如何在两个给定值之间生成一个随机数.
我可以使用以下代码生成一个随机数:
Random r = new Random();
for(int i = 0; i < a.length; i++){
for(int j = 0; j < a[i].length; j++){
a[i][j] = r.nextInt();
}
}
Run Code Online (Sandbox Code Playgroud)
但是,如何生成0到100(含)之间的随机数?
我有一个目录: /home/user/
如何列出此目录中的每个文件(包括子目录中的文件)并按上次修改日期对其进行排序?
我意识到dplyr
v3.0允许你加入不同的变量:
left_join(x, y, by = c("a" = "b")
将匹配x.a
到y.b
但是,是否可以连接变量组合或者我必须事先添加复合键?
像这样的东西:
left_join(x, y, by = c("a c" = "b d")
匹配[ x.a
和x.c
]到[ y.b
和y.d
] 的串联