实时搜索: git如何commit

git如何commit

300条评论 1459人喜欢 5514次阅读 954人点赞
...

怎么样修改git commit后用vim编辑: 没明白,vim 和 git 不冲突呀?只不过如果你是在本地改的,还需要再 push 到远程。

git commit 以后怎么撤销:

如果不小心commit了一个不需要commit的文件,可以对其进行撤销。
 
先使用git log 查看 commit日志

commit 422bc088a7d6c5429f1d0760d008d86c505f4abe  
Author: zhyq0826 <zhyq0826@gmail.com>  
Date:   Tue Sep 4 18:19:23 2012 +0800  
  
    删除最近搜索数目限制  
  
commit 8da0fd772c3acabd6e21e85287bdcfcfe8e74c85  
Merge: 461ac36 0283074  
Author: zhyq0826 <zhyq0826@gmail.com>  
Date:   Tue Sep 4 18:16:09 2012 +0800
找到需要回退的那次commit的 哈希值,
 
git reset --hard commit_id 
 
 使用上面的命令进行回退
 
以下是豆瓣的
 
苍炎的日记
 
起因: 不小新把记录了公司服务器IP,账号,密码的文件提交到了git

方法:

    git reset --hard <commit_id>

    git push origin HEAD --force



其他:

    根据–soft –mixed –hard,会对working tree和index和HEAD进行重置:
    git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息
    git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
    git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容


    HEAD 最近一个提交
    HEAD^ 上一次
    <commit_id>  每次commit的SHA1值. 可以用git log 看到,也可以在页面上commit标签页里找到

如何写好git commit message: 有这样一个版本库,里面包含两个学习用的练习项目:BookStore(以下简称BS)和PictureFriend(以下简称PF)

我在更改PF以后,未进行提交,同时又到BS中优化了一下文件夹结构,然后此时我commit,提交备注信息为“添加图友网项目,更改为Maven形式,报错找不到spring监听器,待解决”,提交成功,似乎没什么问题。

如何使用git回滚版本到分支中的某一个commit: git reset [commit 哈希值]

但是这样做只能把本地分支回滚到该commit上,远程分支还在原来的地方。

可以这样操作:在你想要回滚的commit上另外建一个新分支,然后git checkout [该分支],然后把原来的分支删除掉,git branch -d [老分支]可以删除本地的老分支,同样,远程分支还是老状态,可以git push origin :[老分支],把远程的老分支删除,这样你需要回滚的commit之后的信息在本地和远程都彻底消灭了(慎重,确保你真的不要这些信息了哦)。而你需要回滚的commit之前的信息全部保存了,只不过是分支名字换了一下,你也可以把分支改名回来。这时远程的新分支还不存在,你之后又改动commit并且push之后,远程也和本地同步上了。

如何解决GitHub commit次数过多.git文件过大的问题: 1.删除无用的分支
$ git branch -d <branch_name>
2.删除无用的tag
$ git tag -d <tag_name>
3.清理本地版本库
$ git gc --prune=now

为什么要先 git add 才能 git commit: 当然,最直接的原因就是git发明了一个叫做暂存区的概念,但是为什么要发明这个概念呢?没有暂存区可以不?为什么一定要有暂存区,这才是真正的问题好吧。

要解释这个问题,首先要回到GIT的前辈上来,SVN,集中式源代码管理工具的集大成者。

我们知道SVN相较于第一代源代码管理工具如VSS、CVS有几个显著的区别,其中最重要的特性之一就是原子性提交,每一个提交都是由多个文件的修改组成,而且这个提交是原子性的,要么这些修改全部成功,要么全部失败。

原子性提交带来的好处是显而易见的,这使得我们把项目整体还原到某个阶段或者时间点变得极为简便,就这一点SVN就完虐VSS等源代码管理工具。

Git作为目前逼格最高的源代码管理工具,SVN这个优良的特性显然是要借鉴的。但是Linus马上发现了一个麻烦事儿,在命令行下面选择要提交的修改,还真TM是个麻烦事儿,因为用SVN的时候我们都是这么玩的:

eclipse git 插件怎么暂存不想commit的文件: 根据pom里面的依赖关系去下载到本地仓库里面。
(我刚刚又去测试了下,只是简单在pom.xml文件里面添加个依赖,即引入个包)

如何用git reflog和git cherry-pick找回已删除的commit记录: commit2: add test2.c commit1: add test1.c 模拟丢失commit记录的情况,执行git reset --hard HEAD~1,删除了commit3,同时test3.c文件已经在working tree里看不到了,如果要恢复commit3,就要使用git reflog和git cherry-pick. $ git reflog 502dd0f HEAD@{0}: HEAD~1: updating HEAD 147b3b5 HEAD@{1}: commit: test3 502dd0f HEAD@{2}: commit: test2 0692c03 HEAD@{3}: commit (initial): test1 HEAD@{0}: HEAD~1: updating HEAD 红色加粗的即是被删除了的 commit3,运行git log则没有这一行记录,可以使用git reset --hard 502dd0f 将红色记录删除,恢复cmmit3,需要用git cherry-pick. $ git cherry-pick 147b3b5 [master 02c1e69] test3 0 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 test3.c

  • 100厘米等于多少尺

    电饭煲蒸山药要多长时间熟: 山药很容易烧熟的,烧汤放入沸水中五分钟就能吃了,蒸5-10分钟也能熟了。 ...

    919条评论 5540人喜欢 6311次阅读 502人点赞
  • dnf龙骨在哪

    运行是捕获到异常,这个是什么问题: 这个信息很详细了呀,翻译下:第1行第25列:应该是 ( - + case mod new not null 标识符 双引号限定的标识符 捆绑变量 continue avg count current exists m...

    511条评论 3238人喜欢 6570次阅读 555人点赞
  • mp3tag怎么用

    sessionstorage cookie和localstorage 的区别是什么: 共同点:都是保存在浏览器端,且同源的。区别:cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。而sessionStorage和localStorage不会自动把数...

    921条评论 4310人喜欢 6463次阅读 962人点赞
  • nmd为什么

    Arvin是什么意思?: 【意思】:阿尔文(男子名)...

    641条评论 6307人喜欢 5373次阅读 422人点赞
  • picc导管多少钱

    郑州到北京坐大巴需要几个小时,在哪个站坐车,都有那几班车啊!: 发车站 班次 时间 站点 终点站 车型 票价 中心站(南) 1007 09:30 北京 北京 豪华大巴 172中心站(南) 1006 11:30 北京 北京 豪华大巴 172中心站(南) ...

    777条评论 1776人喜欢 5953次阅读 890人点赞
  • ppt怎样设置大小

    不想运动,也不想节食和吃产品要怎么减肥: 要想减肥,效果又快又好,必须要从饮食和锻炼两个方面入手,其次是要有强大的毅力以及持之以恒的精神。老古话说减肥三分靠锻炼,七分靠饮食,所以在减肥期间,一定要调整好自己的饮食结构,并配以合理的锻炼,可以在短时间内帮助迅速...

    700条评论 3154人喜欢 6348次阅读 756人点赞
  • mega box是谁的物业

    用httpclient获取到的cookie不完整是怎么回事: : 通过登录时取出header中的cookie,组合起来给下一次POST时在header中送回去。注意:是在header中的。 ...

    787条评论 4523人喜欢 5251次阅读 912人点赞