小编kri*_*ver的帖子

未跟踪的文件未显示在git状态中

我有一个具有以下文件夹结构的项目:

所有项目文件都在base_fldr文件夹中.另外我在base_fldr中有一些名为sub_fldr1和sub_fldr2的文件夹.这些子文件夹还包含一些文件.

如果我修改base_fldr或base_fldr\sub_fldr \中的任何文件,那么git status会将它们显示为已修改.另外,如果我向base_fldr添加一个新文件,git status会将其显示为未跟踪文件.

我的问题是如果我在base_fldr\sub_fldr \中添加一个新文件,那么git status不会将文件显示为未跟踪.它甚至不会提供有关该文件的任何信息.

该文件或其扩展名不在我的.gitignore列表中.我也尝试了git add sub_fldr\file_name,但既没有给出错误,也没有将文件添加到索引中.

知道这里发生了什么吗?谢谢!

git status

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

使用 Reactive Lettuce 流水线 Redis 命令

我使用spring boot webflux+ project reactor+lettuce连接和非阻塞方式查询Redis的。我已经配置了ReactiveRedisTemplateLettuceConnectionFactory。spring 文档指出,使用管道的唯一方法ReactiveRedisTemplate是使用该execute(<RedisCallback>)方法。在 non-reactive 中RedisTemplate,我看到有一种executePipelined(<RedisCallback>)方法可以在执行回调之前打开/关闭管道。但是在ReactiveRedisTemplate.execute方法的情况下,它使用 aLettuceReactiveRedisConnection并且既Spring ReactiveRedisConnection没有Lettuce也没有没有对管道的引用。

所以我的问题是,是否可以在使用Spring ReactiveRedisTemplate+时流水线化您的命令ReactiveLettuceConnection

我也注意到,使用ReactiveRedisTemplate.executeRedisCallback具有多个Redis命令的执行速度比打电话只是单独的命令慢。

带有 ReactiveRedisTemplate 的管道示例代码:

reactiveRedisTemplate.execute(connection -> keys.flatMap(key -> 
                                connection.hashCommands()
                                .hGetAll(ByteBuffer.wrap(key.getBytes()))))
                    .map(Map.Entry::getValue)
                    .map(ByteUtils::getBytes)
                    .map(b -> {
                        try {
                        return mapper.readValue(b, Value.class);
                        } catch (IOException e1) {
                        return null;
                        }
                    })
                    .collectList();
Run Code Online (Sandbox Code Playgroud)

没有管道的代码:

keys.flatMap(key -> reactiveRedisTemplate.opsForHash().entries(key))
            .map(Map.Entry::getValue) …
Run Code Online (Sandbox Code Playgroud)

reactive-programming redis lettuce spring-data-redis project-reactor

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

恢复git重置--soft

我修改了我的分支中的一些文件并做了一个

git add --all
Run Code Online (Sandbox Code Playgroud)

但是这增加了一些我不打算为提交添加的文件.

所以我做了一个

git reset --soft HEAD~2 (instead of doing git reset HEAD)
Run Code Online (Sandbox Code Playgroud)

但之前的提交是由其他人提出的,它导致许多文件处于修改/添加/删除状态.有没有办法回到我看到的唯一变化是由我添加/修改的文件的阶段?既然我没有做出实际的提交,有没有办法让我的头回到主人而不会吹走我的变化?git pull导致合并冲突,因为我实际上没有提交我的更改.

谢谢!

git reset

10
推荐指数
2
解决办法
8246
查看次数

将动态属性映射读入Spring托管bean

我有这样的属性文件:

my.properties file:
app.One.id=1
app.One.val=60

app.Two.id=5
app.Two.val=75
Run Code Online (Sandbox Code Playgroud)

我在Spring配置文件中将这些值读入我的bean中的map属性,如下所示:

spring-config.xml:
<bean id="myBean" class="myClass" scope="singleton">
    <property name="myMap">
        <map>
            <entry key="${app.One.id}" value="${app.One.val}"/>
            <entry key="${app.Two.id}" value="${app.Two.val}"/>
        </map>
    </property>
</bean>
Run Code Online (Sandbox Code Playgroud)

这样,如果我向属性文件添加一个新的id/val,我必须在config xml中添加一行,以便在myMap中拥有新的id/val.

我的问题是,有没有办法在spring配置文件中指定key-val对,以便xml中定义的key-val数量可以计算出属性文件中的项目并创建一个map.基本上我想在不同的环境中使用这个xml文件,我们在属性文件中使用不同数量的键值项.我只是不想在每个环境中更改xml文件以读取所有这些值.

如果您需要任何其他细节,请告诉我.任何想法/意见表示赞赏.谢谢!

java spring dynamic map javabeans

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

Project Reactor 使用 slf4j 进行非阻塞日志记录

Project Reactor 中的log()方法Flux.class提到,如果slf4j可用,它将被使用。如果你使用像logbackslf4j这样的记录器实现,它们默认是阻塞的,尤其是写入文件/磁盘部分。Reactor 文档没有提及任何关于此的内容。有没有人对此有想法/经验?我认为一种选择是将 logback 设置为异步。还有其他选择吗?谢谢!

java logback reactive-programming project-reactor spring-webflux

6
推荐指数
1
解决办法
2891
查看次数

无法将一些utf-8字符在C ++中正确打印到txt文件

我的内存中有一些UTF-8字符串(这是更大系统的一部分),基本上是欧洲国家/地区的地名。我正在尝试将它们写入文本文件。我在Linux机器(Fedora)上。因此,当我将这些名称字符串(char指针)写入文件时,文件将以扩展的ASCII格式保存。

现在,我将此文件复制到Windows计算机,在其中我需要将这些名称加载到mySQL DB。当我在notepad ++上打开文本文件时,它再次将编码默认为ANSI。但是我可以选择对UTF-8进行编码,除以下3个字符外,几乎所有字符看起来都与预期的一样:-?,?和?。它们在文本中显示为&#336,&#337和&#369。

是否有人对可能出什么问题有任何想法。我知道这些不是扩展ASCII符号的一部分。但是我将其写入文件的方式类似于:

// create out file stream
std::ofstream fs("sample.txt");

// loop through utf-8 formatted string list
if(fs.is_open()) {
    for(int i = 0; i < num_strs; i++) {
        fs << str_name; // unsigned char pointer representing name in utf-8 format
        fs << "\n";
    }
}
fs.close();
Run Code Online (Sandbox Code Playgroud)

即使使用ú和ö和ß这样的字符,一切也看起来不错。问题仅在于上述三个字符。有什么想法/建议/评论吗?谢谢!

例如,字符串“Gyömr?” 显示为“Gyömr&#369”。

c++ encoding utf-8 character-encoding

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