小编cfl*_*wis的帖子

将现有Git存储库推送到SVN

我一直在用Git完成所有工作并推送到GitHub.我对软件和网站都非常满意,我不想在此时改变我的工作方式.

我的博士生顾问要求所有学生将他们的工作保存在大学托管的SVN存储库中.我已经找到大量关于将现有SVN存储库下载到Git中的文档和教程,但没有关于将Git存储库推送到新的SVN存储库.我希望必须有一些方法来实现这一点,结合使用git-svn和一个新的分支和变基和所有那些精彩的术语,但我是一个Git新手,并且对它们中的任何一个都没有信心.

然后我想在我选择时运行几个命令将提交推送到该SVN存储库.我希望继续使用Git,只是拥有SVN存储库镜像Git中的内容.

如果这有任何不同,我将是唯一一个承诺进入SVN的人.

svn git git-svn

379
推荐指数
5
解决办法
11万
查看次数

Mac终端Vim仅在一行结束时使用退格

无论是我的Mac 10.6终端还是我的,我似乎都有些奇怪.vimrc.

当我backspace在笔记本电脑的键盘上打字时,它只在光标位于行尾时才有效.试图从一行内删除什么都不做.MacVim正常运行.谷歌没有帮助,因为我甚至无法弄清楚这个行为的名称.

我的终端中的所有其他退格命令按预期工作,所以我倾向于它是特定于Vim的.

这是我的〜/ .vimrc映射的输出,我看不到任何会使终端中的Vim以这种方式运行的东西:

cflewis@coral-reef ~> egrep ".*map.*" ~/.vimrc 
"inoremap <expr> <CR> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>"
let mapleader = ","
map Q gq
nmap <silent> <leader>s :set nolist!<CR>
" extended '%' mapping for if/then/else/end etc
map <S-Insert> <MiddleMouse>
map! <S-Insert> <MiddleMouse>
nmap <silent> <C-N> :silent noh<CR>
nmap <C-E> :b#<CR>
nmap <C-P> :NERDTreeToggle<CR>
nmap <leader>p :NERDTreeFind<CR>
nmap <leader>/ :call NERDComment(0, "invert")<cr>
vmap <leader>/ :call NERDComment(0, "invert")<cr>
nmap <leader>t :TlistToggle<CR>
nmap <leader>e :e **/
nmap …
Run Code Online (Sandbox Code Playgroud)

macos vim terminal

65
推荐指数
2
解决办法
2万
查看次数

git log - 分支是否有效?

我似乎无法git log --branches正确过滤其输出.似乎Git忽略了它.

例如git log --graph --all --decorate,打印头:

* commit 3ae0d17538f787bdde68f37f6644ffe9652d8dc1 (HEAD, feature/branch-ignore)
| Author: Chris Lewis <chris@chris.to>
| Date:   Mon Mar 14 17:39:56 2011 -0700
| 
|     Ignore merge commits, as they're going to be duplicating events
|  
* commit 770534e9d77acb03eaf842440c879aec1c5b5500
| Author: Chris Lewis <chris@chris.to>
| Date:   Tue Mar 8 14:39:40 2011 -0800
| 
|     Removed another remote branch check
| 
Run Code Online (Sandbox Code Playgroud)

假设我想过滤master,这应该意味着忽略这些提交.的负责人git log --graph --all --decorate --branches=master还是:

* commit 3ae0d17538f787bdde68f37f6644ffe9652d8dc1 …
Run Code Online (Sandbox Code Playgroud)

git

32
推荐指数
3
解决办法
3万
查看次数

Go中的Python风格生成器

我目前正在研究Tour of Go,我认为goroutines的使用方式与Python生成器类似,特别是问题66.我认为66看起来很复杂,所以我把它重写为:

package main

import "fmt"

func fibonacci(c chan int) {
    x, y := 1, 1

    for {
        c <- x
        x, y = y, x + y
    }
}

func main() {
    c := make(chan int)
    go fibonacci(c)

    for i := 0; i < 10; i++ {
        fmt.Println(<-c)
    }
}
Run Code Online (Sandbox Code Playgroud)

这似乎有效.几个问题:

  1. 如果我将通道上的缓冲区大小调高,比如10,fibonacci将尽快填满10个其他位置,并尽可能快地main消耗掉这些位置.这是正确的吗?这会比以1的缓冲区大小更高的性能而牺牲内存,对吗?
  2. 由于频道没有被fibonacci发送者关闭,当我们离开这里的范围时会发生什么?我的期望是,一旦cgo fibonacci超出范围,渠道和它的一切得到垃圾收集.我的直觉告诉我这可能不会发生什么.

python generator go goroutine

28
推荐指数
4
解决办法
6238
查看次数

Pip可以在安装时安装setup.py中未指定的依赖项吗?

当用户发出安装原始软件的命令时,我想在pit上安装我在GitHub上的依赖项,也可以从GitHub上的源代码安装.这些软件包都不在PyPi上(永远不会).

用户发出命令:

pip -e git+https://github.com/Lewisham/cvsanaly@develop#egg=cvsanaly
Run Code Online (Sandbox Code Playgroud)

这个repo有一个requirements.txt文件,另一个依赖于GitHub:

-e git+https://github.com/Lewisham/repositoryhandler#egg=repositoryhandler
Run Code Online (Sandbox Code Playgroud)

我想是一个命令,一个用户可以发出来安装原包,有点子找到要求的文件,然后安装依赖了.

python pip setuptools

21
推荐指数
2
解决办法
9723
查看次数

想要使用模式匹配添加到HashMap,一次多次获取可变的可变性

我正在尝试编写一些玩具代码,用于存储它在一个单词中看到单词的次数HashMap.如果密钥存在,则将计数器递增1,如果密钥不存在,则将其与值相加1.我本能地希望用模式匹配来做这个,但是我不止一次地尝试了一个可变的错误:

fn read_file(name: &str) -> io::Result<HashMap<String, i32>> {
    let b = BufReader::new(File::open(name)?);
    let mut c = HashMap::new();

    for line in b.lines() {
        let line = line?;
        for word in line.split(" ") {
            match c.get_mut(word) {
                Some(i) => {
                    *i += 1;
                },
                None => {
                    c.insert(word.to_string(), 1);
                }
            }
        }
    }

    Ok(c)
}
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

error[E0499]: cannot borrow `c` as mutable more than once at a time
  --> <anon>:21:21
   |
16 |             match c.get_mut(word) {
   |                   - …
Run Code Online (Sandbox Code Playgroud)

rust borrow-checker

16
推荐指数
2
解决办法
2109
查看次数

如何在Fish中重定向字符串?

我想将字符串重定向到命令的STDIN.

我会用像cmd <<< "my string"Bash 这样的东西,甚至是cmd <<EOF ... EOF.但我似乎无法在Fish中做任何事情.我该怎么办?管道是唯一的方法吗?

fish

13
推荐指数
1
解决办法
818
查看次数

禁用某些文件类型的Vim插件

我想在Vim中禁用某些文件类型的插件.我是一个Vim新手,所以慢慢跟我说:)

我有autocomplpop插件,我真的很喜欢它.但是,如果我正在编辑LaTeX文件,它会显示我已使用过的每个单词英语单词的完成情况.这令人分心!我想为.tex文件禁用它,但我不知道该怎么做.

谢谢!

vim macvim

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

用Ruby正则表达式中的值替换所有匹配项

我遇到了一个Ruby字符串替换问题.我正在编写一个我正在使用的有限语言的预处理器,它本身不支持数组,因此我正在自己攻击.

我有一条线:

x[0] = x[1] & x[1] = x[2]
Run Code Online (Sandbox Code Playgroud)

我想用重新格式化的版本替换每个实例:

x__0 = x__1 & x__1 = x__2
Run Code Online (Sandbox Code Playgroud)

该行可能包括其他地方的方括号.

我有一个匹配数组使用的正则表达式:

array_usage = /(\w+)\[(\d+)\]/
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚Ruby构造逐个替换每个实例.我无法使用,.gsub()因为它将匹配该行上的每个实例,并将每个数组声明替换为第一个数组声明..scan()如果您尝试使用.sub()!块内部扫描,则会抱怨正在修改字符串.

任何想法,将不胜感激!

ruby regex

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

在Go中仅将结构类型指定为结构成员是什么意思?

我知道我可以编写这样的代码,但是我不知道它是如何工作的:

type MyTransport struct {
  http.Transport
}

func (myT *MyTransport) RoundTrip(r *http.Request) (*http.Response, error) {
  return myT.Transport.RoundTrip(r)
}
Run Code Online (Sandbox Code Playgroud)

http.Transport只是一个结构,对不对?它没有名字。那么如何myT.Transport工作?为什么我不必给运输工具起一个名字MyTransport,比如说它像ht http.Transport

go

5
推荐指数
1
解决办法
112
查看次数

标签 统计

git ×2

go ×2

python ×2

vim ×2

borrow-checker ×1

fish ×1

generator ×1

git-svn ×1

goroutine ×1

macos ×1

macvim ×1

pip ×1

regex ×1

ruby ×1

rust ×1

setuptools ×1

svn ×1

terminal ×1