我刚刚克隆了一个git存储库并检出了一个分支.我努力了,然后决定删除我所有的本地更改,因为我想要原始副本.
简而言之,我必须执行以下两个命令来删除我的本地更改
git checkout .
git clean -f
Run Code Online (Sandbox Code Playgroud)
我的问题是,
(1)这是摆脱当地变化的正确方法,或者请让我知道正确的方法.
(2)我们什么时候使用,git reset --hard因为即使没有这个命令也可以重置
谢谢
*解决方案:主要编辑:03/26:* 用git特定术语[tracked/untracked/staged/unstaged]替换了许多含糊不清的术语
当我们进行本地更改时,只有三类文件:
类型1.分阶段跟踪文件
键入2.未分级跟踪文件
键入3. Unstaged UnTracked文件,即UnTracked文件
每个命令的作用:
git checkout . - 仅删除未分级跟踪文件[类型2]
git clean -f - 仅删除未分级的UnTracked文件[类型3]
git reset --hard - 仅删除分阶段跟踪和未分阶段跟踪文件[类型1,类型2]
git stash -u - 删除所有更改[类型1,类型2,类型3]
结论:
很明显,我们可以使用其中之一
(1) combination of `git clean -f` and `git reset --hard`
Run Code Online (Sandbox Code Playgroud)
要么
(2) `git stash -u`
Run Code Online (Sandbox Code Playgroud)
达到预期的效果.
注意:存储,因为这个词的意思是"在指定的地方安全地,秘密地存储(某物)".这总是可以使用git stash pop.因此,在上述两个选项之间进行选择是开发人员的号召.
谢谢Christoph和FrederikSchøning.
编辑:03/27
我认为值得把" …
我收到SQL错误并尝试解决,任何指针都会有帮助,
//这会被执行
SELECT empid FROM employees WHERE deptid IN (10,20,30,40 );
//这会被执行
SELECT deptid FROM department WHERE description LIKE '%application%'
ORDER BY createddate DESC
Run Code Online (Sandbox Code Playgroud)
但是下面的查询会抛出错误:
SELECT empid FROM employees WHERE deptid IN (SELECT deptid FROM department WHERE description LIKE '%application%'
ORDER BY createddate DESC);
Run Code Online (Sandbox Code Playgroud)
错误:ORA-00907:缺少右括号00907. 00000 - "缺少右括号"
更新:07/14:
使用@dasblinkenlight中的确切解决方案进行更新:
问题是将ORDER BY放在WHERE子句子查询中.SQL语法不允许您在WHERE子句中对子查询的元素进行排序,因为它不会更改整个查询的结果
本文很好地解释了许多概念 - http://oraclequirks.blogspot.com/2008/01/ora-00907-missing-right-parenthesis.html
"ORA-00907:缺少右括号显然当得到这样的消息时,第一反应可能是验证哪些括号被遗漏了,但不幸的是,在这个陈述中根本没有丢失的括号.
简而言之,无法解释的语法怪癖总结如下:不要在IN子查询中使用ORDER BY.
现在,有人可能会反对在IN子句中使用ORDER BY是没有意义的,这是正确的,因为Oracle并不关心IN子句中的行顺序:
我尝试使用WHERE子句和'='而不是'IN'的SQL语句,它仍然抛出错误:' missing right parenthesis'.
结论1:
"不要在WHERE子句子查询中使用ORDER BY"或"where子句中的子查询不允许在Oracle中使用ORDER BY"
结论2
本案例研究还显示了我们应该选择JOIN而不是选择子查询的场景
关于在Spring MVC中集成Swagger:
Swagger没有显示GET/PUT/POST文档@RequestMapping
在我的Spring MVC Rest webservice应用程序中,我有一个Login控制器和一个Student Controller.我刚刚配置了Swagger来生成Rest API文档.参考:http://java.dzone.com/articles/how-configure-swagger-generate
问:然而,Swagger只显示类级路径,我猜它不是显示类级别的@RequestMapping.,方法级别映射被忽略.有什么理由吗?
@Controller
@RequestMapping(value = "/login")
public class LoginController {
@RestController
@RequestMapping(value = "/students/")
public class StudentController {
@RequestMapping(value = "{departmentID}", method = RequestMethod.GET)
public MyResult getStudents(@PathVariable String departmentID) {
// code
}
@RequestMapping(value = "student", method = RequestMethod.GET)
public MyResult getStudentInfo(
@RequestParam(value = "studentID") String studentID,
@RequestParam(value = "studentName") String studentName) {
//code
}
@RequestMapping(value = "student", method = RequestMethod.POST) …Run Code Online (Sandbox Code Playgroud) 我目前正在使用Eclipse,Spring Framework MVC创建一个API Rest,我刚刚添加到我的项目swagger中.我可以访问swagger的json结果,但我需要添加swagger ui.
以下是我为swagger-springmvc创建的所有文件:
WebAppInitializer.java
public class WebAppInitializer implements WebApplicationInitializer {
private AnnotationConfigWebApplicationContext ctx = null;
@Override
public void onStartup(final ServletContext sc) throws ServletException {
System.setProperty("spring.profiles.active", "web");
// Create the 'root' Spring application context
ctx = new AnnotationConfigWebApplicationContext();
ctx.register(SpringBaseWebConfiguration.class,
SpringSwaggerConfiguration.class);
// Manages the lifecycle
sc.addListener(new ContextLoaderListener(ctx));
sc.addListener(new ContextCleanupListener());
// Spring WebMVC
ServletRegistration.Dynamic springWebMvc = sc.addServlet("ws",
new DispatcherServlet(ctx));
springWebMvc.setLoadOnStartup(1);
springWebMvc.addMapping("/ws/*");
springWebMvc.setAsyncSupported(true);
}
@PreDestroy
protected final void cleanup() {
if (ctx != null) {
ctx.close();
}
}
}
Run Code Online (Sandbox Code Playgroud)
SpringSwaggerConfiguration.java
public …Run Code Online (Sandbox Code Playgroud) class A{
private void sayA(){
System.out.println("Private method of A");
}
public static void main(String args[]){
A instanceA=new B();
instanceA.sayA();
}
}
class B extends A{
}
Run Code Online (Sandbox Code Playgroud)
我期望它抛出一个运行时异常,因为在编译时编译器检查是否sayA()可以在引用上调用A它,并且在运行时它将检查是否sayA()可以在B对象上调用它.但它反而印刷了" A的私人方法 ".
目标:删除名为'branchname'的远程分支
我过去采取的步骤是: [第一种方法]
今天我尝试删除使用相同的上述步骤,但遇到了如下所述的问题:
$ git branch -d branchname
warning: deleting branch 'branchname' that has been merged to
'refs/remotes/origin/branchname', but not yet merged to HEAD.
Deleted branch branchname (was f394ddc).
prash ~/folder/project1 (branch1)
$ git push origin branchname
Enter passphrase for key '/c/Users/prash/.ssh/id_rsa':
error: src refspec branchname does not match any.
error: failed to push some refs to 'ssh://git@abc.xyz/projname.git'
Run Code Online (Sandbox Code Playgroud)
最后我能够通过不同的方法删除,[第二种方法]
$ git push origin --delete branchname
Run Code Online (Sandbox Code Playgroud)
题,
你知道为什么我不能按照第一种方法删除远程分支吗?还有,为什么要警告?
编辑:
我尝试通过创建和删除远程分支来复制第一个问题,这次我做的唯一更改是在我错过早期的branchname之前添加冒号,并且它被删除了.不确定这是否是之前的原因.
任何建议或帮助非常感谢.
有许多参考链接,但没有明确的解决方案.我想知道Spring项目如何与返回XMLType输出的PLSQL过程交互.你需要XMLParser,然后我们都会在使用Spring时遇到这个错误.有没有人有任何建议?
我有一个运行良好的Maven spring应用程序(mvc/Rest),我添加了以下依赖项来与PLSQL程序进行交互,
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.4</version>
</dependency>
<dependency>
<groupId>com.oracle</groupId>
<artifactId>xdb6</artifactId>
<version>11.2.0.4</version>
</dependency>
<dependency>
<groupId>com.xmlparserv2</groupId>
<artifactId>xmlparserv2</artifactId>
<version>11.1.1</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
包括后xdb6和xmlparserv2,我得到Spring应用程序启动时,提示以下错误(运行时服务器)
2014-08-19 18:28:51,898 INFO | 主要| osbeans.factory.xml.XmlBeanDefinitionReader
Loading XML bean definitions from class path resource [META-INF/spring/myapp-context.xml]
<Line 43, Column 57>: XML-24509: (Error) Duplicated definition for: 'identifiedType'
<Line 60, Column 28>: XML-24509: (Error) Duplicated definition for: 'beans'
<Line 140, Column 34>: XML-24509: (Error) Duplicated definition for: 'description'
<Line 152, Column 29>: XML-24509: (Error) Duplicated definition for: 'import'
<Line …Run Code Online (Sandbox Code Playgroud) 我得到类似的数据
{"ABC的员工1","ABCX"},{"ABC的员工2","ABCY"},{"ABC的员工3","ABCZ"}
从数据库到RefCursor.
我有一个案例,我需要保留从数据库中读取数据的顺序.由于我的数据是一种"键值",我想到了使用了一个Map有序的实现.因此选择了LinkedHashMap
//defined as a static map inside a common utlity class
public class Common{
public static final LinkedHashMap<String, String> empMap = new LinkedHashMap<String, String>();
}
//rs is the resultset
if (rs != null) {
while (rs.next()) {
key = rs.getString("name_text");
value = rs.getString("id");
Common.empMap.put(key, value);
}
}
Run Code Online (Sandbox Code Playgroud)
我必须按照从数据库(Cursor)检索它的顺序将密钥传递给客户端.
List<String> empList = new ArrayList<String>(Common.empMap.keySet());
Run Code Online (Sandbox Code Playgroud)
keySet() - 文档说"返回此映射中包含的键的Set视图.该集由映射支持,因此对映射的更改将反映在集合中,反之亦然"
我所期待的是,由于ArrayList也是一个有序集合,我应该以与检索/插入密钥相同的方式获取密钥Map.
当我做一个示例测试程序时,我得到了预期的结果.
public class LinkedMap {
public static void main(String[] args) { …Run Code Online (Sandbox Code Playgroud) 工作区默认JRE显示我设置的那个Window -> preferences -> Java -> Installed JREs.但默认情况下,项目将JRE系统库作为执行环境[JavaSE-1.6(jre6)].为什么JRE系统库不将Workspace默认JRE作为默认系统库?如何将其更改为默认系统库?

这是我正在测试以处理错误的原始代码的片段。
第一种方法是调用fatalErrorHandler(),但第二种方法不是调用fatalErrorHandler(). 可能是什么原因?
第一的
<?php
//error_reporting(0);
function fatalErrorHandler() {
echo 'YAY IT WORKED';
}
# Registering shutdown function
register_shutdown_function('fatalErrorHandler');
// let force a Fatal error -- function does not exist
functiontest();
echo "hello";
?>
Run Code Online (Sandbox Code Playgroud)
输出:
致命错误:在第 12 行的 ...test2.php 中调用未定义的函数 functiontest() YAY IT WORKED
第二
<?php
//error_reporting(0);
function fatalErrorHandler() {
echo 'YAY IT WORKED';
}
# Registering shutdown function
register_shutdown_function('fatalErrorHandler');
// let force a Fatal error -- function does not exist
functiontest();
function foo () { …Run Code Online (Sandbox Code Playgroud)