git server“丢失”commit问题探究】的更多相关文章

1 背景 gitlab某仓库有同事发现部分代码文件内容丢失,具体表现 A. dev分支commit信息是连续的,看不出明显的大时间范围批量丢失 B. 以SuncardCashier/control/CSymbolEdit.h为例,在1c88f613下只能看到2个历史相关提交 但是1天前提交的bfff1f51,也有此文件的修改提交,意味着bfff1f51这个提交"丢失"了 2 追查过程 2.1 gitlab server侧寻找线索 表面上像是gitlab server出现了某些问题导致&…
本文转载自:http://gitbook.liuhui998.com/5_9.html 译者注: 原书这里只有两个链接: Recovering Lost Commits Blog Post,Recovering Corrupted Blobs by Linus 我根据第一个链接,整理了一篇博文,并把它做为原书补充. 一.前言 在玩git的过程中,常有失误的时候,有时把需要的东东给删了. 不过没有关系,git给了我们一层安全网,让们能有机会把失去的东东给找回来. 二.准备 我们先创建一个用以实验的…
Windows下git工具msysGit使用以及Git server初始化 Windows下git工具,这里选择msysGit,版本为msysGit-netinstall-1.8.1.2-preview20130201.因为Git本身是运行在Linux下的,所以要想在Windows环境下使用,必须构建一个与Linux一样的虚拟环境.msysgit是 Git 版本控制系统在 Windows 下的版本,msysGit  作为 Window 平台下的原生程序.所以每一个要连接Git server的wi…
Git是一个开源的版本控制系统,由Linus Torvalds主导,用于支持Linux内核开发.每一个Git工作目录,都是一个完整的代码库,包含所有的提交历史.有能力跟踪所有的代码版本,而不会去依赖于网络与中央服务器. 安装 Git可以通过以下的命令进行安装 sudo apt-get install git 配置 每一个git的用户,在第一次使用的时候都需要通过以下两个命令,进行相应的配置 git config --global user.email "you@example.com"…
前言:之前学习了如何使用 git 后,一直想搭建一个本机搭建一个 git server 的,一开始不知道走了弯路用了 gitosis,折腾了我好几天都没配置好.昨晚查资料发现 gitosis 早就过时了,更新很慢取而代之的是 gitolite.后来在查看 gitosis 和 gitolite 的时候发现了这篇文章,其实如果对权限要求不高的话,都不需要安装 gitosis, gitolite,gitlab 之类的管理软件,所以今天一大早起来就开始研究了,最终成功了. 参考文章1, 参考文章2 一.…
Git, 一个分布式的版本管理工具,我认为其革命性的点:在于改变了用户协作的方式,使得协作更简单. 下面讲述 使用一个开源软件 Gitolite搭建一个Git Sever, 并给了一个推荐的团队协助方式. Install Gitolite 创建 git 用户 创建一个名为 git 用户 [root@server ~]# useradd git 设置密码 [root@server ~]# passwd git ``` Download Gitolite # 切换为 git 用户 # su git…
对于今天越来越受欢迎的Git,相信做开发的朋友都基本有所耳闻.它最大的便利就是分布式的开发库,让使用git作为源码管理库的开发者可以在本地提交代码的修改而不用提交到远程的库,同时需要和团队协作.同步代码时,也仅仅是多一条指令而已.如果你想了解git的全貌,可以看<Pro git>,他有中文版,貌似没有维护到最近的,需要的可以google it. Git 使用者的日常流程: 1.从git server远程库上clone一个副本到本地库(git clone), 2.本地开发,然后本地提交修改(gi…
0. Environment: Server machine: CentOS 6.3 x86 Client machine: Windows 10 Pro x86_64 1. Install ssh server [server machine shell]#yum install openssh openssh-server#chkconfig sshd on #/etc/init.d/sshd start 2. Create user git [server machine shell] #…
v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} 2 208 2014-04-25T07:04:00Z 2014-04-25T07:04:00Z 25 465 2657 22 6 3116 12.00 false 7.8 磅 0 2 false false fals…
Git 可以使用四种主要的协议来传输资料:本地协议(Local),HTTP 协议,SSH(Secure Shell)协议及 Git 协议. 在此,我们将会讨论那些协议及哪些情形应该使用(或避免使用)他们. 我们这里使用的是ssh协议,因为我们项目成员数比较少,安全方便,协议的具体介绍请见后半部分.我们采用的是网上比较流行的gitcore搭建的,如果想搭建一个高端一点的(类似github,有web界面的)可以参考这个网址:https://git-scm.com/book/zh/v2,里面由关于gi…