git命令

作者: 上帝是个女孩丶 | 来源:发表于2017-06-20 11:29 被阅读19次

用过至少三种git软件。没有一款好用的!今天就出事了。。真的还不如Xcode集成的,以后还是推荐使用命令行操作。至于分支图建议网页浏览。

事情是这样的,本地有一个用于测试的项目,平时的一些小研究,测试钻研代码都在里面。然后一直也不怎么着急放到网上去。这份本地半年多没提交了,曾经在github上面建了个库。

然后刚刚用了github Desktop提交报错,让我pull。心想莫非曾经改动过忘了pull,就pull了一下然后报错,提示我点击同步,然后就随手点了一下。然后……本地代码全没了。半年多的心血全没了……

软件的问题就在于,正常流程一点事没有。一旦报错他就开始瞎搞了,做他认为正确的事情。结果直接帮我还原到前面正确的版本,还原失败还强行还原。它自动帮我reset了一下,失败,然后又reset hard了一下。

曾经我也以为没什么是还原不了的,所有东西都可以找回来。所以我肆无忌惮。

直到我搜到了这行命令:

#将本地的状态回退到和远程的一样 强制回退,本地代码会被修改

git  reset  –hard  origin/master

这个世界上还能有这种操作?!!

好了,不说了,我去静静。怀旧一下我那一百多个文件。

总结:本地写完代码,一定要注意放缓冲区。或者就索性直接commit,备份到服务器才是真实的,才不会被替代。即便代码出了问题,也可以备份后  再回滚到某一个版本对比着来修复问题。

这篇文章太单调,顺便加一些git命令吧:

git clone 地址  下载项目(地址在你当前位置,通过cd切换你想去的目录)

注:pull之前如果git认为你有冲突 需要先把改变的工作放到本地缓存区,有一个好的解决办法。本地缓冲区,不是add。或者当你一边写代码,一边出了bug,可以先把当前进度的代码放进缓存区,改完bug提交,注意这时候是可以正常提交push的,提交后再pop回到之前的代码进度。

git stash [save message]对当前的暂存区和工作区状态进行保存。

git stash list列出所有保存的进度列表。

git stash pop [--index] []恢复代码进度

具体流程:

git stash

git pull

git stash pop

git add .

git commit -m “”

$ git commit -a -m “” 组合提交

git push

git checkout 文件名  撤销修改

git checkout . 撤销所有修改

#回退所有内容到上一个版本

git  reset  HEAD^

#回退a.py这个文件的版本到上一个版本

git  reset  HEAD^  a.py

#向前回退到第3个版本

git  reset  –soft  HEAD~3

#将本地的状态回退到和远程的一样 强制回退,本地代码会被修改

git  reset  –hard  origin/master

#回退到某个版本

git  reset  057d

#回退到上一次提交的状态,按照某一次的commit完全反向的进行一次commit

git  revert  HEAD

git push -d origin devel  删除远程分支

git branch -D devel 删除本地分支

git checkout -b devel 创建本地分支

git branch test  创建本地分支

git checkout -b yangdingjia origin/master创建本地分支跟踪远程分支

git branch —all  查看全部分支(远程)

git pull -p  拉取分支

git push origin devel 推送本地分支到远程

git merge devel  合并devel分支到当前分支

git rebase 也是合并分支但是合并后会自动把合并的分支放到树干后面  显得提交历史很干净像是没合并过一样。

rebase的过程中,也许会出现冲突(conflict). 在这种情况,Git会停止rebase并会让你去解决 冲突;在解决完冲突后,用"git-add"命令去更新这些内容的索引(index), 然后,你无需执行 git-commit,只要执行:

$ git rebase --continue

这样git会继续应用(apply)余下的补丁。

在任何时候,你可以用--abort参数来终止rebase的行动,并且"mywork" 分支会回到rebase开始前的状态。

$ git rebase --abort

相关文章

  • Github学习文档-3

    目录 1.Git 的基本的命令git init命令git status命令git add命令git commit命...

  • git实用命令

    git实用命令 1 git init 命令 初始化 git 仓库 repository 2 git add 命令 ...

  • git管理工具

    git分支命令 git提交命令

  • git 多条命令一次执行

    上代码git命令 && git命令

  • git入门

    这里对git init、git add、git commit命令进行一个总结。 $ git init 命令,该命令...

  • GIT 常用命令总结

    GIT 常用命令总结 GIT 初始化命令 命令描述git init初始化本地 git 仓库git config -...

  • Git命令整理

    Git命令 ———————————————— git配置: git基本步骤: git分支管理: 创建分支命令: 切...

  • git 分支

    git 显示所有分支(包含本地和远程)命令: git 删除本地分支命令: git 显示远程分支命令: git 删除...

  • Git命令集合

    Git基础命令 git远程关联 git远程关联移除 git命令简单简介 常用命令集合:git init创建版本库 ...

  • git使用指南

    常用命令 帮助类: git --help:显示git命令帮助信息git help -a:显示所有命令git hel...

网友评论

      本文标题:git命令

      本文链接:https://www.haomeiwen.com/subject/wquoqxtx.html