Git挽回错误的push(commit)】的更多相关文章

若你的(zhu)队友不小心把错误的代码提交到远程仓库,特别是包含了很多删除文件指令,不要尝试使用Git的API修改,或者删除Git仓库里的某次提交记录,风险十分大,正确的做法是备份你的本地源码,然后拉一下仓库的最新版本,再把备份的代码覆盖回去,这时Git会自动检测目录内的文件变动,我们执行pull然后再执行提交即可!…
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:彻底回退到某个版本,本…
写文章最难的部分,是找题材! 所以最近每次遇到bug或错误都挺兴奋开心(zflwx)的,因为又可以写笔记了 也可以记录新手学习之路上遇到的常见问题,提供其他新手参考. 最近学Udemy平台Ruby学习在线课程,我在本机练习做了一个Ruby on Rails项目(名称定为:yelpdemo), 我先用subl .叫出Sublime编写项目内的网页,做一点修改后, 再用Terminal按照我自己Day2笔记所说的Git步骤试着同步此项目到Github的同名repository储存库. 前情提要:我再…
git常见错误及解决方案总结 使用git在本地创建一个项目的过程  $ makdir ~/hello-world                              //创建一个项目hello-world     $ cd ~/hello-world                                       //打开这个项目     $ git init                                                          //…
1. Pull is not possible because you have unmerged files. 症状:pull的时候 $ git pull Pull is not possible because you have unmerged files.Please, fix them up in the work tree, and then use 'git add/rm <file>'as appropriate to mark resolution, or use 'git…
Git初学者的个人经验记录,仅供参考 1. Pull is not possible because you have unmerged files. 症状:pull的时候 $ git pull Pull is not possible because you have unmerged files.Please, fix them up in the work tree, and then use 'git add/rm <file>'as appropriate to mark resol…
1. 执行git log -3 --graph A,查看A分支下的commit: 注:commit 后面的hash值代表某个commit,这里把”82f1fb7138c5860cc775b4b5ea71c5d19c4e6497“这个commit提交到B. 2. 执行git checkout B,切换到B分支; 3. 执行 git cherry-pick 82f1fb7138c5860cc775b4b5ea71c5d19c4e6497,该commit便被提交到了B分支; 4. git push /…
 参考: [转] git merge 将多个commit合并为一条之--squash 选项 git checkout master git pull origin master # 本地先拉取最新的master,最后目标是要merge到master git branch feature--merge # 从master创建一个新的专门用来做merge的新branch:feature--merge git checkout feature--merge git merge --squash fea…
在使用Git的过程中,我们喜欢有的文件比如日志,临时文件,编译的中间文件等不要提交到代码仓库,这时就要设置相应的忽略规则,来忽略这些文件的提交 Git 忽略文件提交的方法 这种方式通过在项目的某个文件夹下定义 .gitignore 文件,在该文件中定义相应的忽略规则,来管理当前文件夹下的文件的Git提交行为. .gitignore 文件是可以提交到公有仓库中,这就为该项目下的所有开发者都共享一套定义好的忽略规则. 在 .gitingore 文件中,遵循相应的语法,在每一行指定一个忽略规则.如:…
当我们修改完代码,提交了一个 commit,然后发现改错了,怎么修正?下面分两种情况来讨论:修正最近一次提交,和修正历史多个提交. 修正最近一次提交 如果发现刚刚提交的内容有错误,当场再修改一下再提交一个新 commit 不就可以么?可以是可以,不过还有一个更加优雅和简单的解决方法: git commit --amend "amend" 是"修正"的意思.在提交时,如果加上 --amend 参数,Git 不会在当前 commit 上增加 commit,而是会把当前…
git clone错误 Initialized empty Git repository in ***/.git/ error: The requested URL returned error: 401 while accessing http://gitlab*** fatal: HTTP request failed 错误原因: git版本太低 git版本更新命令: 参考:http://blog.csdn.net/huangshaotian/article/details/40074635…
eclipse git 一个错误:the current branch is not configured for pull No value for key branch.xxx.merge found in configuration : 这是由于 在用gui创建分支的时候 config文件没有创建branch 在config文件加上 [branch "xxx"] remote = origin merge = refs/heads/xxx 您可以…
今日打开 Sublime Text 2,随即弹出 Package Control - Unable to find git.exe 错误.如下, 原因:曾经通过 git clone 命令获取过 Sublime Package.Sublime Text 每次启动后试图更新 Package,但找不到 git.exe. 解决办法:如错误提示,依路径 Preferences > Package Setting > Package Control > Settings - User, 添加如下配置…
Git: 教你如何在Commit时有话可说   不知道大家有没有观察过那些在Github上Star数位居前列的项目,它们无一例外的都拥有完善的文档体系和高覆盖的测试用例.要做到完善没有规范肯定是不行的,代码要有代码的规范,协作要有协作的规范.我们今天要说的主题就是关于Git中记录Commit Message的参考规范.先来看两张图,一张来自国际知名项目,一张是国内某知名项目(笑). 国际知名项目AngularJS 国内知名项目MingGeJS…
一.为什么需要合并多个 commit 呢?   有时候,我们开发一个功能. 修修补补 commit 了很多次,过多的 commit 会显得很复杂. 不够直观,不能比较清晰查看那些 commit 是对应的那个功能. 所以,在这种情况下.我们需要整理一下 commit 的记录,让我们更好的管理提交记录.     二.具体合并多个 commit 的流程.   1.development 分支有四次 commit ,然后我准备合并 "add a.php" 和 "add b.php&q…
git  reflog  通过这个看commit id git reset [commit id] --hard   有时候要删除一个index.lock文件.…
 随心所欲生成git仓库随意一段commit的专用patch应用小实践 我们在开发中.时不时的可能要去做一个patch给你的下线,或者你的合作者.在git管理中,我们知道有git format-patch命令,那怎么使用呢? 笔者以下就以实际样例来记录一下这个过程: /*****************************************************************************************************/声明:本博内容均由http…
场景描述: 重新配置电脑之后,提交了git,邮箱发生错误. git log # 查看日志git reset 版本 # 回到之前的版本,版本回退git config --global user.name 'username' # 更改用户名git config user.name # 查看用户名git config --global user.email 'email # 更改邮箱git config user.email # 查看邮箱 都执行完成之后,重新提交代码即可.—————————————…
git rev-parse master^{commit} 是什么意思 显示master提交的SHA1值 if you want to make sure that the output actually names an object in your object database and/or can be used as a specific type of object you require, you can add the ^{type} peeling operator to th…
有的时候,改完代码提交 commit 后发现写得实在太烂了,连自己的都看不下去,与其修改它还不如丢弃重写.怎么操作呢? 使用 reset 撤销 如果是最近提交的 commit 要丢弃重写可以用 reset 来操作.比如你刚写了一个 commit: 写完回头看了看,你觉得不行这得重新写.那么你可以用 reset --hard 来撤销这条 commit. git reset --hard HEAD^ HEAD^ 表示往回数一个位置的 commit`,上篇刚说过. 因为你要撤销最新的一个 commit…
git rebase 合并多个commit 方法 在开发过程中,有时一个任务会分几次commit提交,这样可能对于有些分支要cherry pick时会比较麻烦,这是我们可以通过git rebase 将几个commit合并为一个commit,再推送到远端 git rebase -i 这里指的是通过交互的手段执行git rebase, 也是合并commits 的好方法 例子 假设当前git日志文件内容是这样 ➜ test git:(master) git log --oneline bb44232…
如果不小心把错误的commit给commit了,可以对其进行撤销 1.使用git log查看commit日志,找到错误提交前一版本commit的哈希值; 2.使用git reset --hard commit_id; 3.git push origin HEAD --force(git push --force) 将修改提交到git服务器…
[问题描述] 在使用Git Push代码的时候,会出现 Push to origin/master was rejected 的错误提示. 在第一次提交到代码仓库的时候非常容易出现,因为初始化的仓库和本地仓库是没有什么关联的,因此,在进行第一次的新代码提交时,通常会出现这个错误. [问题原因] 远程仓库和本地仓库的内容不一致 [解决方法] 在git项目对应的目录位置打开Git Bash   然后在命令窗输入下面命令: git pull origin master --allow-unrelate…
[问题描述] 在使用Git Push代码的时候,会出现 Push to origin/master was rejected 的错误提示. 在第一次提交到代码仓库的时候非常容易出现,因为初始化的仓库和本地仓库是没有什么关联的,因此,在进行第一次的新代码提交时,通常会出现这个错误. [问题原因] 远程仓库和本地仓库的内容不一致 [解决方法] 在git项目对应的目录位置打开Git Bash   然后在命令窗输入下面命令: git pull origin master --allow-unrelate…
撤销push 1. 执行  git log查看日志,获取需要回退的版本号 2. 执行 git reset –soft <版本号> ,如 git reset -soft 4f5e9a90edeadcc45d85f43bd861a837fa7ce4c7 ,重置至指定版本的提交,达到撤销提交的目的 然后执行 git log 查看 此时,已重置至指定版本的提交,log中已经没有了需要撤销的提交 git reset 命令分为两种: git reset –soft 与 git reset –hard ,区…
其实就是硬reset到之前对的commit记录然后强行再推送到远程库一下 具体操作: git reset --hard <commit_id> git push origin HEAD --force…
错误产生的原因:Github 工程默认名为了 main 由于受到"Black Lives Matter"运动的影响,GitHub 从今年 10 月 1 日起,在该平台上创建的所有新的源代码仓库将默认被命名为 "main",而不是原先的"master". 所以 pull 和 push 都会报错 解决方案: 统一远程和本地的仓库名称: ​ 把本地的 master 仓库名称修改为远端的 main # 重命名命令: git branch -m 旧名字 新…
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch test/docs/456776898979.apib' --prune-empty --tag-name-filter cat -- --all  …
如果输入$ Git remote add origin git@github.com:djqiang(github帐号名)/gitdemo(项目名).git 提示出错信息:fatal: remote origin already exists. 解决办法如下: 1.先输入$ git remote rm origin 2.再输入$ git remote add origin git@github.com:djqiang/gitdemo.git 就不会报错了! 3.如果输入$ git remote…