这种情况是:我在我的git存储库中丢失了一些工作,这项工作曾经被提交过,但现在已经埋没在我的历史中,某些地方可能无法通过'git log --all'访问.我唯一能记住的是一些不同的字符串,可以确定一个文件,这是我工作的一部分.
我有一个解决方案......但它很长,你有更好的解决方案吗?
这是我的解决方案:
我已经设法通过批处理命令找到我的提交SHA1:
我有一个编码项目,我想在GitHub上维护.
我去了http://github.com并创建了一个帐户.
我在Windows 7上下载并安装了Git,选择通过命令行使用它.
通过一些谷歌搜索教程,我创建了一个SSH密钥.
我遵循以下说明:

但当我得到"git commit ..."时,我收到以下错误.

我的下一步是什么?谁一直沿着这条路走下去,可以帮助我?谁知道Windows 7的git教程可以工作,所以我可以开始?我想做的就是获取代码,学习如何更新代码,并从那里继续学习.
我对一些代码进行了重大的重构,在此过程中,我多次提交。尚未将其推送到任何公共仓库。在推送之前,我现在想将提交重新组织成逻辑单元。问题是我不仅要压缩提交内容,还希望将大块重新组织为其他提交内容。
为了清楚起见,我将A与B1,B2,B3一起提交,并将B与B1,B2,B3进行。我想签出A之前的版本,并拥有新的提交C,带有大块A1,A2,B2和新的提交D,带有大块B1,B3,A3。
提前致谢。
我在SVN存储库中有一个项目.我在Eclipse中有2个项目:一个用于分支,另一个用于trunk.目前我在SVN分公司工作.每当我需要向存储库提交某些内容时,我将其提交到分支,然后复制/粘贴到主干源文件并提交到主干.有什么办法可以在一次操作中提交2个存储库吗?
我刚开始使用git,当我提交它时,它使用VIM文本编辑器来改变写提交消息.这是正常的吗?
在我读过的教程和示例中,没有使用过VIM.
是因为我使用的是Windows 7 64位版本吗?
我有以下问题......
我试图将一个远程分支合并到我的本地,然后将更改推送到repo ...好吧,我获取了有三个提交的远程分支,但其中一个没有完成,所以我不想推送一个这些提交到repo ...当我运行git log时,它显示了这个:
commit: A1
merge: M1
merge remote branch "remote/branch"
commit: A2
commit: A3
commit: A4
我想删除提交A2 ...我该怎么办?我正在搜索,有些人说使用git rebase或git reset,但我不确定应该使用哪一个...以防万一,我没有推动这些更改
谢谢您的帮助
根据Mercurial的提交帮助信息:
Run Code Online (Sandbox Code Playgroud)If a list of files is omitted, all changes reported by "hg status" will be committed.
有没有简单的方法来改变这种行为?
除非明确指定文件,否则我希望Mercurial不提交任何更改.
我在Linux上,我正在使用命令行.
我有一个链接到Dropbox文件夹的git存储库.最近,我已将笔记本电脑切换到另一台,现在我无法执行"git commit -am"功能.我不断收到此错误消息:"无法打开'.git/COMMIT_EDITMSG':权限被拒绝.
有任何想法吗?
谢谢,Liron
有鉴于此:
假设我有这个基础:
pick 16b5fcc msg1
pick c964dea msg3
pick 06cf8ee msg1
pick 396b4a3 msg2
pick 9be7fdb msg3
pick 7dba9cb msg2
Run Code Online (Sandbox Code Playgroud)
假设我想将所有comitts与相同的消息组合成一个...(即所有msg1提交到单个msg1提交,所有msg2提交到1 msg2提交,等等)
我该怎么做才能挤压这些?
输入以下命令时:
\copy mmcompany from '<path>/mmcompany.txt' delimiter ',' csv;
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
ERROR: duplicate key value violates unique constraint "mmcompany_phonenumber_key"
Run Code Online (Sandbox Code Playgroud)
我理解为什么会这样,但是如何以插入有效条目的方式执行命令,并且会丢弃创建错误的命令?