可能重复:
删除MySQL中的重复行
如何从MySQL表中删除所有重复数据?
例如,使用以下数据:
SELECT * FROM names;
+----+--------+
| id | name |
+----+--------+
| 1 | google |
| 2 | yahoo |
| 3 | msn |
| 4 | google |
| 5 | google |
| 6 | yahoo |
+----+--------+
Run Code Online (Sandbox Code Playgroud)
我会使用,SELECT DISTINCT name FROM names;如果它是一个SELECT查询.
我怎么做DELETE才能删除重复项并保留每个重复记录?
我有一个跟踪远程/主分支的本地分支.运行后git-pull和git-log,日志将显示在远程追踪分支的所有提交以及当前分支.但是,因为对远程分支进行了如此多的更改,我只需要查看对当前本地分支的提交.
用于仅显示特定分支的提交的Git命令是什么?
笔记:
配置信息:
[branch "my-branch"]
remote = origin
merge = refs/heads/master
Run Code Online (Sandbox Code Playgroud) 我需要一个独立于平台(Linux/Unix | OSX)的shell/bash命令来确定特定进程是否正在运行.例如mysqld,httpd...最简单的方法/命令是什么?
在bash脚本中,验证git URL指向有效git repo并且脚本有权从中读取的最简单方法是什么?
应该支持的协议是git@,https://和git://.Curl在git://协议上失败.
git@github.com:UserName/Example.git
https://UserName@github.com/UserName/Example.git
git://github.com/UserName/Example.git
Run Code Online (Sandbox Code Playgroud)
注意:我不是要求检查URL是否在语法上正确,我需要验证在bash脚本中输入的URL位置是否存在repo.
我使用 CI 系统编译 terraform 提供程序并将它们捆绑到图像中,但每次运行 terraform init 时,都会收到以下错误/失败。
\n\xe2\x94\x82 Error: Failed to install provider\n\xe2\x94\x82 \n\xe2\x94\x82 Error while installing rancher/rancher2 v1.13.0: the current package for\n\xe2\x94\x82 registry.terraform.io/rancher/rancher2 1.13.0 doesn't match any of the\n\xe2\x94\x82 checksums previously recorded in the dependency lock file\nRun Code Online (Sandbox Code Playgroud)\n对于我的提供程序文件中列出的所有提供程序,都会重复此消息,如下所示:
\nterraform {\n required_version = ">= 0.13"\n\n required_providers {\n azurerm = {\n source = "hashicorp/azurerm"\n version = "2.55.0"\n }\n github = {\n source = "integrations/github"\n version = "4.8.0"\n }\n }\n...snip...\n}\nRun Code Online (Sandbox Code Playgroud)\nterraform hcl 锁定文件存储在存储库中,只有当存储库中存在锁定文件时,才会出现这些错误并且 terraform init 失败。可能是什么原因?
\n是否可以根据主机名在.htaccess文件中设置不同的SetEnv变量?
例如,我需要我的.htaccess文件具有以下值:
SetEnv PYRO_ENV production
Run Code Online (Sandbox Code Playgroud)
在生产箱上,......
SetEnv PYRO_ENV stage
Run Code Online (Sandbox Code Playgroud)
在分期盒子上.该.htaccess文件受版本控制,这就是我正在寻找条件解决方案的原因.
我的工作目录中有我正在尝试丢弃的更改(重置为当前索引的文件版本),但是,git checkout -- <file>不会丢弃更改.我试图手动删除文件(rm -r files)然后运行git checkout -- .,再次显示修改后的文件.
$ git checkout -- .
$ git status
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: files/Hulk.png
# modified: files/Hulk_2.png
#
no changes added to commit (use "git add" and/or "git commit -a")
Run Code Online (Sandbox Code Playgroud)
运行git diff显示文件已修改... …
我创建了一个git子模块并将其推送到我们的主存储库.这很好用,我可以通过浏览器看到存储库中的子模块.
为了测试它工作正常,我试图得到源是一个新的构建树.首先我跑了git submodule init然后git submodule update <submodule-name>.
这失败了,错误:
error: pathspec 'x/mypkg' did not match any file(s) known to git. Did you forget to 'git add'
Run Code Online (Sandbox Code Playgroud)
我尝试添加到.gitmodules子模块的URL但没有运气.
我在公司获得了一台虚拟机来安装网络软件.但是我遇到了一个相当离奇的问题,如果PHP变量与特定模式匹配,它们将被服务器覆盖(重写).什么可以像这样重写PHP变量?
以下是整个独立脚本.
<?php
$foo = 'b.domain.com';
echo $foo; // 'dev01.sandbox.b.domain.com'
$bar = 'dev01.sandbox.domain.com';
echo $bar; // 'dev01.sandbox.sandbox.domain.com'
$var = 'b.domainfoo.com';
echo $var; // 'b.domainfoo.com' (not overwritten because it didn't match whatever RegEx has been set)
?>
Run Code Online (Sandbox Code Playgroud)
基本上任何包含子域和域名匹配的变量都将被重写.这不是mod_rewrite能够触及的东西,所以它必须是服务器级别的东西,它解析出PHP并重写一个字符串,如果它匹配RegEx.
我正在使用几周前进行合并的存储库,我们刚刚发现它使用了--strategy=ours标志(它应该使用--strategy-option =我们的标志),因此不对HEAD应用任何更改.但是,我们需要应用更改.Git已经将分支识别为已合并以及分支历史中的提交.
无法使用此类合并进行还原 git revert -m ...
恢复和/或重新应用合并以更改文件的正确方法是什么?
master A - B - E - F - G ---> L - M - N
\ /
topic C - D
Run Code Online (Sandbox Code Playgroud)
合并提交(F)将是此方案的罪魁祸首.