一.引言 马三也算Github的忠实用户了,经常会把一些练手的项目传到Github上面进行备份.其中有一个名为ColaFramework的Unity框架项目,马三开发了一年多了,期间提交代码的时候在Log中上传了一些比较敏感的信息,这些信息都可以在Github上面搜索到,马三想把这些Log信息清除掉,使其变成一个没有提交记录的“新仓库”.于是我在网上一搜,步骤还挺简单的,直接按照下面一步步操作就可以了. 二.操作步骤 1.切换到新的分支 git checkout --orphan latest_…
小书匠版本管理 教程内容基本来自git官方教程,认真都了系列的文章,然后对一些重点的记录下来,做了简单的归纳并写上自己的思考. 目录: 1.Git介绍 2.Git版本控制原理 3.Git特点 4.Git中文件的三种状态 1.Git介绍 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 采用版本控制系统(VCS)是个明智的选择. 有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态; 你可以比较文件的变化细节,查出最后是谁修改了哪个地方…
case如下: 有2个git仓库:repo1.repo2: 想将repo1中的文件移入repo2: repo1的历史日志要保留:   1 2 # 1.将repo1作为远程仓库,添加到repo2中,设置别名为other [jot@myhost repo2]$ git remote add other ../repo1/ 1 2 3 4 5 6 7 8 # 2.从repo1仓库中抓取数据到本仓库 [jot@myhost repo2]$ git fetch other warning: no comm…
解决 git clone 后无代码 前言:这个教程只适用于像我一样大致理解Git的原理,但是不太记得住Git命令的同学使用.所以具体原理只会提一下,具体可以参见Pro Git. 在另一篇 简明的教程 里提到获取Git库有两种方式,一种是直接在工作目录下创建一个新的Git库,另一种是从已有的库中克隆,即使用git clone. 其中使用第二种方法可能出现目录为空,即没有代码的现象. (1)分析原因 在Git Bash中,切换到目标目录.然后使用 $ ls -a 查看如果能看到.git目录,说明克隆…
在Git中,用HEAD表示当前版本,也就是最新的提交版本, 上一个版本就是HEAD^, 上上一个版本就是HEAD^^, 往上100个版本写100个^比较容易数不过来,所以写成HEAD~100. Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id. HEAD指向的版本就是当前版本 穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本. 要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本. 1.$ git log…
答:一共分成两步 一. revert多个commit并生成多个新的commit git revert <old commit>^..<new commit> 二. 使用rebase将多个新的commit合并成一个commit git rebase -i <base commit> 举例: $git log 111111111 yes 222222222 no 333333333 yes or no 4444444444 no or yes 第一步: 执行git reve…
使用git svn clone迁移svn仓库 clone命令可以指定很多参数,主要用到这些,你也可以使用git svn help查看完整的参数列表. git svn clone https://172.16.0.241:8443/svn/wsgjp/ -r 76896:HEAD --no-metadata --authors-file=svnuser.text --trunk=svnproject --branches=svnbranch yourGitProject r指定起止版本号. no-…
由于对git的使用还不是很熟悉,只是会基本的添加.提交.分支相关简单操作,在开发新需求的时候,需要涉及两个项目,一部分在新项目的新分支上开发的,另一部分是在老项目的老分支上开发的(这里忘了创建新分支).项目开发完提交的时候,在新项目分支顺利提交并review,但是老项目上的部分代码这里就遇到了问题,怎么提交呢?再提交到老分支上不合理啊,提出这个问题我的leader直接告诉了我cherry-pick,还给我讲了使用方法.大概是这样:在老项目的老分支上执行add.commit操作,然后记住commi…
目录 一.版本控制概要 1.1.什么是版本控制 1.2.常用术语 1.3.常见的版本控制器 1.4.版本控制分类 1.4.1.本地版本控制 1.4.2.集中版本控制 1.4.3.分布式版本控制 1.5.Git与SVN最主要区别 二.Git安装与配置 2.1.什么是Git 2.2.搭建Git工作环境 2.2.1.下载Git 2.2.2.安装Git 2.2.3.启动Git 2.2.4.Linux与Mac OS安装Git 2.2.5.Bash基本操作命令 2.3.Git配置 - git config…
深入浅出Git教程(转载)   目录 一.版本控制概要 1.1.什么是版本控制 1.2.常用术语 1.3.常见的版本控制器 1.4.版本控制分类 1.4.1.本地版本控制 1.4.2.集中版本控制 1.4.3.分布式版本控制 1.5.Git与SVN最主要区别 二.Git安装与配置 2.1.什么是Git 2.2.搭建Git工作环境 2.2.1.下载Git 2.2.2.安装Git 2.2.3.启动Git 2.2.4.Linux与Mac OS安装Git 2.2.5.Bash基本操作命令 2.3.Git…