git-troubles

  • u3_953305
    了解作者
  • 5.1KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-24 06:04
    上传日期
常见问题的简单解决方案 从阶段删除文件(更改将被保留) git reset file_name HEAD 重置文件内容(对该文件的所有更改都将丢失) git checkout -- file_name 将整个存储库重置为上一次提交的状态(所有本地更改都将丢失) git reset --hard HEAD 删除最后的提交,但保留在该提交中所做的更改(在提交到错误的分支时很有用-此后很容易更改分支并再次提交那些更改) git reset HEAD^ 删除最后的提交,并放弃其中所做的所有更改(就像从未执行过此提交,所有更改都丢失了一样) git reset --hard HEAD^ 附加信息 不能将git reset命令与--hard标志和file_name一起使用。 硬标记仅适用于整个存储库。 上述解决方案只有在没有推送更改的情况下才是很好的解决方案。 推送后仍然可以完成
git-troubles-master.zip
  • git-troubles-master
  • tests
  • ControllerMiddlewareTest.php
    1.9KB
  • bootstrap.php
    86B
  • FakeController.php
    351B
  • src
  • ControllerMiddleware.php
    2.4KB
  • README.md
    2KB
  • composer.json
    892B
  • .gitignore
    50B
  • phpunit.xml
    781B
内容介绍
### Simple solutions for common problem * Remove file from stage (changes will be preserved) ```git reset file_name HEAD``` * Reset file content (all changes to that file will be lost) ```git checkout -- file_name``` * Reset whole repository to state from last commit (all local changes will be lost) ```git reset --hard HEAD``` * Remove last commit but preserve change that was made in that commit (useful when commited to wrong branch - after that it's easy to change branch and commit those changes again) ```git reset HEAD^``` * Remove last commit and discard all changes that was made in it (it will be like this commit was never made and all changes all lost) ```git reset --hard HEAD^``` #### Additional info * It is not possible to use git reset command with both --hard flag and file_name. Hard flag works only on whole repository. * Above solutions are good only if changes were not pushed do remote repository. After push they still could be done but there could be side effects if pushed changes where pulled by others. In this case after making solutions 4th or 5th, pushing will require --force flag to overwrite remote branch/. Also, others after pulling again will be forced to merge. This is confusing to some and might cause problems. To avoid those problems it is much better to use git revert to remove commit changes without removing actual commits. ### Advanced merge tactics https://github.com/git/git/blob/master/Documentation/howto/revert-a-faulty-merge.txt ### Useful aliases ```bash [alias] logline = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit distance = "!f() { git --no-pager log --oneline --graph --first-parent --left-right --no-decorate HEAD...$1/${2:-$(git rev-parse --abbrev-ref HEAD)}; }; f" compare = "!f() { git log --oneline --graph --first-parent --left-right --decorate $1...$2; }; f" append = commit --amend -C HEAD [core] pager = cat [help] autocorrect = 1 ```
评论
    相关推荐
    • GitLearning
      GitLearning 此存储库供git学习更多评论
    • git-em-all:ClonePull尽可能快地存储git存储库的数组
      git-em-all :warning: 工作正在进行中 尽可能快地克隆/拉取git repostories数组。 安装 npm install git-em-all 用法 var gitEmAll = require ( 'git-em-all' ) 贡献 欢迎捐款! 请先阅读。 执照
    • challenge-git
      离群工程Git挑战 在Outlier,您将能够提供功能和修复程序而不会引起冲突和其他版本控制麻烦。 保持代码库整洁的重要工具是git rebase 。 这项挑战将测试您对...将您的新存储库设置为源: git remote set-url origin $
    • challenge-git
      离群工程Git挑战 在Outlier,您将能够提供功能和修复程序而不会引起冲突和其他版本控制麻烦。 保持代码库整洁的重要工具是git rebase 。 这项挑战将测试您对...将您的新存储库设置为源: git remote set-url origin $
    • test:Git 存储库测试
      测试 这是文件自述文件,我将做一些更改以学习如何使用 GitGit 存储库测试
    • weijie:git项目存储
      weijie git项目存储
    • 挑战git
      离群工程Git挑战 在Outlier,您将能够提供功能和修复程序而不会引起冲突和其他版本控制麻烦。 保持代码库干净的重要工具是git rebase 。...将您的新存储库设置为源: git remote set-url origin ${y
    • git-challenge
      离群工程Git挑战 在Outlier,您将能够提供功能和修复程序而不会引起冲突和其他版本控制麻烦。 保持代码库整洁的重要工具是git rebase 。 这项挑战将测试您对...将您的新存储库设置为源: git remote set-url origin $
    • 挑战git
      离群工程Git挑战 在Outlier,您将能够提供功能和修复程序而不会引起冲突和其他版本控制麻烦。 保持代码库干净的重要工具是git rebase 。...将您的新存储库设置为源: git remote set-url origin ${y
    • GaussDB_100_1.0.1-DATABASE-REDHAT-64bit.tar.gz
      guassdb100在redhat上安装包,单机部署的包,安装步骤请看我的文中介绍,经过大量实验搭建总结出来的文档