我正在使用语义发布进行版本控制。每当我将某些东西推送到我的分支时,CI(Gitlab)就会执行语义发布。我的问题是我推送到我的 git 分支,semantic-release 创建了一个版本并创建了标签(例如 1.0.0)。最后,我发现我错过了这次提交的一些重要内容。所以我删除了Gitlab中的标签(存储库>标签,例如https://gitlab.com/user/project/-/tags),最后再次推送我的提交。但现在,semantic-release 告诉我该标签已经存在,但 Gitlab 不再显示任何标签(我删除了所有标签)。现在我决定将以下行添加到我的 CI 中:
git show-ref --tags -d
这显示了我已经在 Gitlab 中删除的所有标签,但它们似乎存在于我的 CI 中。所以我很困惑这里发生了什么......有什么想法吗?我的 CI 中是否需要“同步标签”之类的东西?
我已经用谷歌搜索了很多,但不幸的是,我无法解决我的问题...我的 MongoDB 中有一些文档,现在我向我的猫鼬模式添加了一个新的可选字段。不幸的是,我无法使用这个新字段更新现有文档。
MyModel.findByIdAndUpdate(req.body.modelId, {$set: req.body}, {new: true})
Run Code Online (Sandbox Code Playgroud)
这只会更新现有字段,但不幸的是它不会添加新字段。如何强制猫鼬将新字段添加到文档中?
更新:我的错误。我的模式有自己的存储库,因为我在不同的项目之间共享它们。我忘记在各自的项目中更新它们。现在一切都很完美。
我在创建COM DLL时遇到了一些麻烦.我的IClassFactory实现如下所示:
include <windows.h>
#include <ObjBase.h>
#include "AddObj.h"
#include "AddObjFactory.h"
HRESULT __stdcall CAddFactory::CreateInstance(IUnknown* pUnknownOuter,
const IID& iid, void** ppv)
{
if (pUnknownOuter) { return CLASS_E_NOAGGREGATION; }
CAddObj* pObject = new CAddObj();
if (pObject == NULL)
{
return E_OUTOFMEMORY;
}
return pObject->QueryInterface(iid, ppv);
}
HRESULT __stdcall CAddFactory::LockServer(BOOL bLock)
{
return E_NOTIMPL;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是Visual Studio总是说"错误C2143:语法错误:缺少';' 在第6行的"__stdcall"之前(以及更多行).我已经google了,我发现我要包含windows.h.但这并不能解决我的问题...任何人都知道我的代码有什么问题或者我要包含什么来解决问题?我通过编译头文件得到了同样的错误:
#include <Windows.h>
#include <ObjBase.h>
class CAddFactory : public IClassFactory
{
public:
HRESULT __stdcall QueryInterface(REFIID riid, void **ppObj);
ULONG __stdcall AddRef();
ULONG __stdcall Release();
HRESULT __stdcall CreateInstance(IUnknown* …Run Code Online (Sandbox Code Playgroud) 我正在尝试将 ts-node 与 nodemon 一起使用。两者都使用纱线安装,我的 package.json 具有以下结构:
{
"name": "yarnTest",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"devDependencies": {
"@types/express": "^4.0.36",
"bootstrap-sass": "^3.3.7",
"nodemon": "^1.11.0",
"typescript": "^2.4.1"
},
"dependencies": {
"@types/chalk": "^0.4.31",
"chalk": "^2.0.1",
"express": "^4.15.3",
"ts-node": "^3.2.0"
},
"scripts": {
"dev": "nodemon --exec 'ts-node --cache-directory .tscache' ./src/www.ts",
"start": "ts-node --fast ./dist/www.ts"
}
}
Run Code Online (Sandbox Code Playgroud)
现在,当我使用“yarn run dev”时,它执行 nodemon 并且 nodemon 尝试执行“ts-node”但 nodemon 告诉我命令“ts-node”不存在:
Der Befehl "'ts-node" ist entweder falsch geschrieben oder konnte nicht gefunden werden。
Yarn 是全局安装的,但 ts-node 仅为我的项目安装。我已经尝试过:
"scripts": { …Run Code Online (Sandbox Code Playgroud) 我有一个存储十进制值的 MySQL 数据库 (DECIMAL(32, 12))。当我使用 HeidiSQL 选择值时,这些值显示正确(例如 15922.638440778302)。但是当我使用 MySQL 绑定(https://github.com/mysqljs/mysql)在 NodeJS 中做同样的事情时,它显示我 15922.63844077830 3。
我的 SQL 查询非常简单:
SELECT SUM(`amount`) FROM `balances`;
Run Code Online (Sandbox Code Playgroud)
知道什么会导致差异吗?也许我需要在 NodeJS 中的 MySQL 初始化期间指定精度?目前,除了登录凭据之外,我没有指定任何其他内容:
let mysql = require('mysql').createPool({
host: global.dbconfig['dbhost'],
database: global.dbconfig['dbname'],
user: global.dbconfig['dbuser'],
password: global.dbconfig['dbpass']
})
Run Code Online (Sandbox Code Playgroud) 我的 Kubernetes 集群中有一个命名空间无法删除。当我运行时kubectl get ns traefik -o yaml,我得到以下信息:
apiVersion: v1
kind: Namespace
metadata:
annotations:
cattle.io/status: '{"Conditions":[{"Type":"ResourceQuotaInit","Status":"True","Message":"","LastUpdateTime":"2021-06-11T20:28:59Z"},{"Type":"InitialRolesPopulated","Status":"True","Message":"","LastUpdateTime":"2021-06-11T20:29:00Z"}]}'
field.cattle.io/projectId: c-5g2hz:p-bl9sf
lifecycle.cattle.io/create.namespace-auth: "true"
creationTimestamp: "2021-06-11T20:28:58Z"
deletionTimestamp: "2021-07-04T07:21:20Z"
labels:
field.cattle.io/projectId: p-bl9sf
managedFields:
- apiVersion: v1
fieldsType: FieldsV1
fieldsV1:
f:metadata:
f:annotations:
.: {}
f:field.cattle.io/projectId: {}
f:labels:
.: {}
f:field.cattle.io/projectId: {}
f:status:
f:phase: {}
manager: agent
operation: Update
time: "2021-06-11T20:28:58Z"
- apiVersion: v1
fieldsType: FieldsV1
fieldsV1:
f:metadata:
f:annotations:
f:cattle.io/status: {}
f:lifecycle.cattle.io/create.namespace-auth: {}
manager: rancher
operation: Update
time: "2021-06-11T20:28:58Z"
- apiVersion: v1
fieldsType: FieldsV1
fieldsV1: …Run Code Online (Sandbox Code Playgroud) 我有以下 App.vue 文件:
<script setup>
import { RouterView } from "vue-router";
</script>
<template>
<RouterView v-slot="{ Component }">
<transition :name="fade" mode="out-in">
<component :is="Component" />
</transition>
</RouterView>
</template>
Run Code Online (Sandbox Code Playgroud)
以及以下路由器文件:
import { createRouter, createWebHistory } from "vue-router";
const router = createRouter({
history: createWebHistory(import.meta.env.BASE_URL),
routes: [
{
path: "/",
name: "signin",
component: () => import("../views/signin.vue"),
},
{
path: "/dashboard",
name: "dashboard",
component: () => import("../views/dashboard.vue"),
},
],
});
export default router;
Run Code Online (Sandbox Code Playgroud)
当我运行我的应用程序并单击任何链接时,无论它是否使用$router.push("/dashboard");或,都不会发生任何转换router-link(to="/dashboard" active-class="active")。我已经检查了许多其他问题和教程,但不幸的是它仍然不起作用。知道为什么没有发生转换吗?