git log --oneline 命令可以在一块儿显示做过的改动. 我在change 2时忘了一条,想在change 1后再添加一个语句或一个操作,然后这个状态再提交仍作为change 2.将这个staged改动作为上一个commit中. 将1.py复制了一份重命名为2.py,然后git add 2.py,我如果直接用git commit -m “备注”就不行,可以用 git commit --amend --no-edit 虽然change 2的注释没变,但是前面的指针地址变了,可以看出来.…
原文来至 一.创建版本库 版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以"还原". 所以,创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录: $ mkdir learngit $ cd learngit $ pwd /Users/michael/learngit pwd命令用于显示当前目录.在我的Mac上,这个仓库…
git命令操作 本地库操作 初始化本地仓库 初始化命令 git init $ work % cd workspace $ workspace % mkdir WebService //创建文件夹 $ workspace % git init //初始化 Initialized empty Git repository in /Users/jack/work/workspace/.git/ $ workspace % 初始化后的效果 会在初始化后的目录中生成一个.git隐藏文件夹 $ worksp…
git reset.git checkout和git revert是你的Git工具箱中最有用的一些命令.它们都用来撤销代码仓库中的某些更改,而前两个命令不仅可以作用于提交,还可以作用于特定文件. 因为它们非常相似,所以我们经常会搞混,不知道什么场景下该用哪个命令.在这篇文章中,我们会比较git reset.git checkout和git revert最常见的用法.希望你在看完后能游刃有余地使用这些命令来管理你的仓库. Git仓库有三个主要组成——工作目录,缓存区和提交历史.这张图有助于理解每个…
git怎么创建本地版本仓库 安装git我就不用说了吧!下载地址:https://github.com/msysgit/msysgit/releases/download/Git-1.9.4-preview20140815/Git-1.9.4-preview20140815.exe 安装完后 点击桌面Git Bash :命令如下 $ mkdir testcms $ cd testcms $ pwd /Users/my-pc/testcms pwd命令用于显示当前目录.在我的机器上,这个仓库位于\U…
git reset --hard:把commit撤销,意思是不仅此次commit提交的文件从本地版本库的状态重置,而且把此次commit的文件也从本地目录中删除 所以如果你执行之后发现,git status正常,用ls命令查看即将提交的文件列表,发现文件竟然被删掉了. 所以这个命令一定要慎用,不懂会害死人的. 这个命令常见的场景是undo commit permanently(永久撤销commit) 详细的说明是:http://www.git-scm.com/docs/git-reset git…
复制远程库git clone git@github.com:Hconly/learngit.git在GitHub上,可以任意Fork开源仓库:自己拥有Fork后的仓库的读写权限:可以推送pull request给官方仓库来贡献代码. Git基本常用命令如下: mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init : 把当前的目录变成可以管理的git仓库,生成隐藏.git文件. git add XX : 把xx文件添加到暂存区去. git comm…
git reset三个选项 --mix,--hard,--soft 数据 针对每个选项都是操作这个文件. [root@centos demo]# git init Initialized empty Git repository in /root/demo/.git/ [root@centos demo]# echo one >> a.txt [root@centos demo]# git add a.txt [root@centos demo]# git commit -m "fi…
转载:创建版本库 什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”. 所以,创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录: $ mkdir learngit $ cd learngit $ pwd /Users/michael/learngit pwd命令用于显示当前目录.在我的Mac上,这个仓库位…
参考: 找回Git中丢失的Commit Git误操作 git reset强制回滚 恢复commit方法 使用Git时,常有误操作,在Commit之后又执行了git reset --hard HEAD强制回滚本地记录以及文件到服务器版本,导致本地做的修改全部恢复到Git当前分支的服务器版本,同时Commmit记录也消失了. 此时解决方法是通过git reflog来查看先前记录并恢复: git reflog会记录所有HEAD的历史,也就是说当你做 reset,checkout等操作的时候,这些操作会…
git回滚到某个版本操作: 1.git log //查看指过去的版本 2.     git reset --hard 复制上面commit后的字符串到此处 如果只想 回滚单机的,那么到上面就结束,如果要回滚远程仓库,那么: 3.  git push -f origin master    //强制提交 4.git clone出现SSL错误 解决方法:git config --global http.sslVerify false 方法2: 1.查看原来版本:git reflog master …
Git版本回滚之 git revert 与 git reset 在使用 git 的时候,如果错误push之后,经常会回滚版本. git的回滚有两种方式: revert命令:这种方式,是用一种反向的 push 来重新提交一次.git中可以看到操作记录. reset命令:这个命令,是一种重置.即错误提交了,我要删除这个提交记录.也可以实现回滚. 两个命令的对比: revert 和 reset 看上去达到的效果是一样的,但其实是完全不同的过程. 如果已经 push 到线上代码库, reset 删除指定…
git reset 如果说git revert是一个安全的撤销方式, 那么git reset就是一个非常危险的方法了. 当你使用git reset撤销的时候, 你没有可能在回到最初了-他是一个永久的不可撤销的undo. git reset时Git命令中唯一一个有可能丢失你工作的命令. git reset可以用来删除已经commit了的快照, 但是他更多的是用来撤销在stage区和工作目录下的修改. git reset应该只用来撤销本地的修改-不应该使用reset撤销和其他开发者一起共享的comm…
文章目录 1. 概述 2. 如何把修改暂存起来,留着以后使用? 2.1 使用场景 2.2 git stash 暂存进度 2.3 查看进度 2.4 恢复进度 3. 如何撤销工作区的修改? 4. 如何把暂存区的修改撤回到工作区 5. 如何把最近的一次commit撤回到暂存区 6. 如何回退已经push到远程版本库的提交 7. 小结 因为学习资料中讲的是在没听懂,自己从网上找了一个写的挺好的文章:https://blog.csdn.net/flysqrlboy/article/details/7925…
记录一下关于 git 不同提交版本间切换的操作以及如何恢复至切换之前的版本. 切换到之前提交的版本 —— git reset --hard 笔者在使用 git 时,首先接触到了一个"黑魔法"命令 git reset --hard,通过该命令可以回退到 git 之前存在的提交. 首先通过 git log 查看各个提交历史,可以看到各个提交版本的提交信息,包括其计算得到的 SHA-1 值. git log //查看存在的提交信息,包括其计算的 SHA-1 值,作者和简单描述 在获得目标版本…
文章目录 git reset目录树重写 git reset 重置 git reset目录树重写 git reset --soft 暂存区工作区不变 git reset --hard git reset file bane 如果修改某一个文件(没有git add,已被提交过),想撤销这次修改(确定没任何用处)? git checkout a.txt 或者 /src/ (撤销某个文件下的所有) 如果修改某一个文件(git add已在暂存区),想撤销这次修改(确定没任何用处)?,执行完下面的命令就会回…
Git,是Linus花了两周时间用C写的一个分布式版本控制系统.牛人该怎么定义? 零.结论先行 倒叙总结一下: HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id. 使用命令 git reset --hard HEAD^回退到上一个版本 穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本. 要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本. 下面继续我们的学习: 1.G…
Git速成学习笔记整理于廖雪峰老师的官网网站:https://www.liaoxuefeng.com/ 我太困了0.0精神点再写...... /*我来啦!以后会陆续更新自己的学习笔记*/ Git是分布式版本控制系统,尤其是2008年,GitHub网站上线了,它为开源项目免费提供Git存储,无数开源项目开始迁移至GitHub,包括jQuery,PHP,Ruby等等. 先说集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开…
git reset revert 回退回滚取消提交返回上一版本 总有一天你会遇到下面的问题. (1)改完代码匆忙提交,上线发现有问题,怎么办? 赶紧回滚. (2)改完代码测试也没有问题,但是上线发现你的修改影响了之前运行正常的代码报错,必须回滚. 这些开发中很常见的问题,所以git的取消提交,回退甚至返回上一版本都是特别重要的, 大致分为下面2种情况:  1.没有push 这种情况发生在你的本地代码仓库,可能你add ,delete,commit 以后发现代码有点问题,准备撤销本次commit,…
一.创建版本库 版本库,又名仓库(Repository),可以简单理解为一个目录,这个目录里的所有文件可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者将来某个时刻可以还原. 1.创建一个空目录(目录名中最好不要包含中文) pwd命令用于显示当前目录 2.通过  git init  命令把这个目录变成Git可以管理的仓库 此时,目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的 ls -ah 命令可以看到隐藏的.git目录 3.把文件添加到…
本文主要记录了版本的回退,以及工作区,暂存区概念的理解. //开始之前,先回顾上次的内容,修改文件如下,并提交到版本库. Git is a distributed version control system. Git is free software distributed under the GPL. 1.查看版本库的信息 ubuntu@myubuntu:~/joe/learngit$ git log //可以看到,下面有3个版本 commit 71038bf6cbd05ef559549a1…
Git官方提供的快速入门教程:https://try.github.io/levels/1/challenges/1 特点:Git极其强大的分支管理:分布式版本 集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器.中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆.集中式版本控制系统最大的毛病就是必须联网才能工作. 使用…
最近从廖雪峰老师的个人网站上学习git,做点笔记. ★★★★★ 先注册自己的username和email,否则会报如下错误: 注册:git config --global user.name "XXX"    -------这是注册username git config --global  user.email "XXX@XX.com"   -------这是注册email git config  --list    -------这是查看config信息 现在开始…
重置命令(git reset)是Git 最常用的命令之一,也是最危险最容易误用的命令.来看看git reset命令用法. ----------------------------------------------------------------------------------------------------------- 用法一:git reset [-q]  [<commit>] [--] <paths>..... 用法二:git reset [--soft | -…
git reset (–mixed) HEAD~1 回退一个版本,且会将暂存区的内容和本地已提交的内容全部恢复到未暂存的状态,不影响原来本地文件(未提交的也不受影响) git reset –soft HEAD~1 回退一个版本,不清空暂存区,将已提交的内容恢复到暂存区,不影响原来本地的文件(未提交的也不受影响) git reset –hard HEAD~1 回退一个版本,清空暂存区,将已提交的内容的版本恢复到本地,本地的文件也将被恢复的版本替换…
git log 查看所有提交信息. commit 67692318180bed6b2a17db0708cfbe0231e33db3 (HEAD -> master) Author: kingBook <412126604@qq.com> Date: Fri Apr 27 09:57:41 2018 +0800 good commit 99affce3f6ddc56d70e7d4397c0ed584db5210b3 Author: kingBook <412126604@qq.com…
在window下已经安装了git的环境 1.建立本地仓库 mkdir   test     #建立test目录 cd   test        #进入目录 git  init           #创建好了本地git仓库,会发现在test目录中多了一个.git目录,并且这个目录是隐藏的 示例: $ git init Initialized empty Git repository in F:/git-repo/test/.git/ init前 init后 2.提交文件到中转站和仓库(add和c…
安装Git 最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.Mac和Windows这几大平台上正常运行了. 在Linux上安装Git 首先,你可以试着输入 git ,看看系统有没有安装Git: $ git The program 'git' is currently not installed. You can install it by typing: sudo…
Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100. jiqing@ubuntu:/home/wwwroot/default/siemens/new_hotel$ git reset --hard HEAD HEAD 现在位于 0b3a6db 提交分享页面 jiqing@ubuntu:/home/wwwroot/default/siemens/ne…
刚刚提交了三个commit, git reflog显示如下: 最后一个commit在文件末尾加了一行:v3,以此类推: 下面,使用git reset --hard commitID来进行commit回退:(应该回滚的时工作区的commit版本吧) 1)回到最后一个commit之前,即回到v2后的版本: git reset --hard fe0b7d6 ( 亦可以使用快捷的方式: git reset --hard HEAD ^   ,^ 表示回到上一个版本,如果需要回退到上上个版本的话,将HEAD…