我有一个项目,在项目过程中我意识到我不喜欢目录的名称。
在 GIT 中,我们可以重命名目录然后提交,但历史记录仍会显示较旧的文件夹。
我想将名称更改重新设置为较早的提交。所以我通常会做的是:
git rebase -i origin/master
Run Code Online (Sandbox Code Playgroud)
然后将文件夹重命名提交移到顶部。
然而,正如预期的那样,git 会产生很多需要解决的冲突。
有没有更自动化的方法来做到这一点?
我想知道window传入反应组件的对象是否是合成的.
如果不是我假设我需要以下代码来确定视口的宽度和高度
const w = window,
d = document,
documentElement = d.documentElement,
body = d.getElementsByTagName('body')[0],
width = w.innerWidth || documentElement.clientWidth || body.clientWidth,
height = w.innerHeight || documentElement.clientHeight || body.clientHeight
Run Code Online (Sandbox Code Playgroud) 使用docker build命令行我可以传递构建秘密,如下所示
docker build \
--secret=id=gradle.properties,src=$HOME/.gradle/gradle.properties \
--build-arg project=template-ms \
.
Run Code Online (Sandbox Code Playgroud)
然后在 Dockerfile 中使用它
# syntax = docker/dockerfile:1.0-experimental
FROM gradle:jdk12 AS build
COPY *.gradle .
RUN --mount=type=secret,target=/home/gradle/gradle.properties,id=gradle.properties gradle dependencies
COPY src/ src/
RUN --mount=type=secret,target=/home/gradle/gradle.properties,id=gradle.properties gradle build
RUN ls -lR build
FROM alpine AS unpacker
ARG project
COPY --from=build /home/gradle/build/libs/${project}.jar /tmp
RUN mkdir -p /opt/ms && unzip -q /tmp/${project}.jar -d /opt/ms && \
mv /opt/ms/BOOT-INF/lib /opt/lib
FROM openjdk:12
EXPOSE 8080
WORKDIR /opt/ms
USER nobody
CMD ["java", "-Xdebug", "-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=0.0.0.0:8000", "-Dnetworkaddress.cache.ttl=5", …Run Code Online (Sandbox Code Playgroud) 如何Optional.orElse(null)标记为org.jetbrains.annotations.NotNull
javadocorElse明确指出允许 null
* @param other the value to be returned, if no value is present.
* May be {@code null}.
Run Code Online (Sandbox Code Playgroud)
但我的代码在 SonarQube 中标记了一个“错误”。
return users.findById(userID)
.flatMap(user -> students.findByUser(user))
.map(GetAllStudentsSvc::mapToStudent)
.orElse(null);
Run Code Online (Sandbox Code Playgroud)
看代码好像没有标注。查看IDE,它似乎也没有被标记
即使将代码注释为也@Nullable无济于事。
我想看看StyleSheet.compose和StyleSheet.flatten方法之间有什么区别。从他们的文档来看,听起来是一样的,只是 flatten 似乎修改了原始数据,而 compose 没有副作用。我的解释正确吗?
我想将 Redis 配置为 LRU 缓存。我想避免因内存限制而重复自己。如果我做
command: redis-server --maxmemory-policy allkeys-lru
deploy:
resources:
limits:
memory: 1.5G
Run Code Online (Sandbox Code Playgroud)
就足够了还是我真的需要放入这样的东西(我为操作系统等使用了稍小的尺寸)
command: redis-server --maxmemory-policy allkeys-lru --maxmemory 1.4G
deploy:
resources:
limits:
memory: 1.5G
Run Code Online (Sandbox Code Playgroud) 我目前没有集群环境,但我很好奇 @ApplicationScoped集群环境中的行为.群集中是否只有一个群集,或者群集中每个JVM仍然只有一个群集?
我已经读过@Singleton根据JVM创建的内容
仅当找不到文件时,我才在寻找等效的重定向请求?如果文件丢失,我希望它对另一台服务器执行 ProxyPass 而不是重定向。
这并没有很好地工作,因为它不会处理不以“/”结尾的请求,例如https://site.trajano.net/trajano,它转到代理并改为 redrects。
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule (.*) - [L]
RewriteRule (.*) https://trajano.github.io/%{REQUEST_URI} [P]
Run Code Online (Sandbox Code Playgroud)
我也从不同的答案中尝试了以下方法,效果稍好一些,但会发生什么情况是它重定向到 github 而不是代理。
RewriteCond %{DOCUMENT_ROOT}/$1 -f [OR]
RewriteCond %{DOCUMENT_ROOT}/$1 -d
RewriteRule (.*) - [S=2]
#
# Requested resource does not exist, do rewrite if it exists in /archive
RewriteCond %{DOCUMENT_ROOT}/archive/$1 -f [OR]
RewriteCond %{DOCUMENT_ROOT}/archive/$1 -d
RewriteRule (.*) /archive/$1 [L]
#
# Else
RewriteRule (.*) https://trajano.github.io/%{REQUEST_URI} [P]
Run Code Online (Sandbox Code Playgroud) 我正在ConsumerSeekAware我的监听器类中实现。但是重写的方法 registerSeekCallback,onPartitionsAssigned,onIdleContainer 永远不会被调用。下面是我的消费者配置和消费者文件。无法识别错误。
使用 Spring-kafka : 1.1.6 版本。
消费者:
package com.test.kafka.binder;
import java.util.Map;
import org.apache.kafka.common.TopicPartition;
import org.springframework.kafka.annotation.KafkaListener;
import org.springframework.kafka.listener.ConsumerSeekAware;
import org.springframework.stereotype.Component;
@Component
public class Consumer implements ConsumerSeekAware {
@KafkaListener(topics = "${kafka.topic}", group = "foo")
public void listen(String message) {
System.out.println("Received Messasge in group foo: " + message);
}
@Override
public void registerSeekCallback(ConsumerSeekCallback callback) {
System.out.println("registerSeekCallback");
}
@Override
public void onPartitionsAssigned(Map<TopicPartition, Long> assignments, ConsumerSeekCallback callback) {
System.out.println("onPartitionsAssigned");
}
@Override
public void onIdleContainer(Map<TopicPartition, Long> assignments, ConsumerSeekCallback callback) {
System.out.println("onIdleContainer");
} …Run Code Online (Sandbox Code Playgroud) 由于最近对镜像ubuntu-latest 进行了更改,引入了 docker-compose 的错误版本,因此我必须在管道上锁定 docker-compose 的版本。
但是,我曾经使用一项任务来帮助清理我的部署脚本,即DockerCompose@0。我正在尝试实现相当于
- task: DockerCompose@0
displayName: 'Remove build options'
inputs:
action: 'Combine configuration'
removeBuildOptions: true
Run Code Online (Sandbox Code Playgroud)
所以基本上我正在考虑使用yq它将解析 YAML 文件并删除不适用于堆栈部署的构建选项。但是,我不太确定该怎么做。因为我需要从可能包含它的每项服务中删除它。
因此给出以下输入
- task: DockerCompose@0
displayName: 'Remove build options'
inputs:
action: 'Combine configuration'
removeBuildOptions: true
Run Code Online (Sandbox Code Playgroud)
我想要得到
services:
def:
build: ./def
image: trajano/def
ghi:
image: trajano/ghi
version: '3.7'
Run Code Online (Sandbox Code Playgroud) java ×3
docker ×2
apache ×1
cdi ×1
git ×1
git-rebase ×1
javascript ×1
mod-rewrite ×1
react-native ×1
reactjs ×1
redis ×1
sonarqube ×1
spring-kafka ×1
yaml ×1
yq ×1