文档章节

git相关记录

冷血
 冷血
发布于 2013/01/20 22:38
字数 642
阅读 88
收藏 2
git

git config http.postBuffer 524288000

git init --bare 创建一个纯仓库
git clone url

一,多人开发流程
1,创建本地开发分支
git checkout -b develop
git checkout -b me

2,提交更新到服务器
在me分支提交修改内容
git commit 
git checkout develop
git pull --rebase origin develop
git merge me --no-ff   / git checkout me | git rebase develop | git checkout develop | git merge me
git push origin develop
git checkout me
git rebase develop

3,更新服务器修改内容
在me分支提交修改内容
git checkout develop
git pull --rebase origin develop
git checkout me
git rebase develop

4,其它命令
git reset --hard HEAD^ 撤销最后一次提交,该次提交所有内容会丢失,慎用.HEAD^^最后两次
git reset HEAD^ 撤销最后一次提交,但该次提交内容存在work tree中.清除了commit和index
git revert 还原到某个版本,之前提交会保留.

5,永久删除文件

## 注意Windows下用双引号
git filter-branch --index-filter 'git rm -r --cached --ignore-unmatch path/to/your/file' HEAD
git push origin master --force
rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now
git gc --aggressive --prune=now
6,解决Windows Git Bash中文乱码问题
/etc/gitconfig
[gui]
    encoding = utf-8 #代码库统一用urf-8,在git gui中可以正常显示中文
[i18n]
    commitencoding = GB2312 #log编码,window下默认gb2312,声明后发到服务器才不会乱码
    logoutputencoding = utf-8 #解决日志显示为的问题
[svn]
    pathnameencoding = GB2312 #支持中文路径
/etc/git-completion.bash
alias ls='ls --show-control-chars --color=auto'  #ls能够正常显示中文
/etc/inputrc
set output-meta on   #bash中可以正常输入中文
set convert-meta off
/etc/profile
export LESSCHARSET=utf-8   #$ git log 命令不像其它 vcs 一样,n 条 log 从头滚到底,它会恰当地停在第一页,按 space 键再往后翻页。这是通过将 log 送给 less 处理实现的。以上即是设置 less 的字符编码,使得 $ git log 可以正常显示中文。

二,配置文件
.gitconfig
[core]
	quotepath = false
[i18n]
	logoutputencoding = utf-8
	commitencoding = gbk
[alias]
        co = checkout
        ci = commit
        st = status
        br = branch
        re = remote
        di = diff
        rb = rebase
        l = log --oneline --decorate -12 --color
        ll = log --oneline --decorate --color
        lc = log --graph --color
        dci = dcommit
[gui]
	encoding = utf-8
[svn]
	pathnamecoding = GB2312

免密码访问git库
windows 用户目录下创建_netrc
非windows 用户目录下 创建 .netrc,设置权限 600
machine www.github.com
login username
password password

三,常用命令
清理git库中历史中提交的大文件.

删除历史提交中指定文件
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch */target/*' --prune-empty --tag-name-filter cat -- --all
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch *.iml' --prune-empty --tag-name-filter cat -- --all

清理删除后空间
rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now
git gc --aggressive --prune=now





© 著作权归作者所有

共有 人打赏支持
冷血
粉丝 9
博文 18
码字总数 1518
作品 0
高级程序员
私信 提问
自动代码上线-环境部署

1,流程 本地测试-公司测试环境-生产环境 2,步骤 公司测试环境: 1)创建git库 ,创建目录 并出初始化 git init,开发将代码上传git 库 2)部署环境(nginx或apache),创建配置文件*.conf ...

邱月涛
2017/07/29
0
0
实验楼Python研发工程师--Git 实战教程

1、git进行初始化。 Git的第一件事就是设置你的名字和,这些就是你在提交时的签名,每次提交记录里都会包含这些信息。使用命令进行配置: 2、获得仓库 有两种方法可以得到它:一种是从已有的G...

努力一点点坚持一点点
09/13
0
0
Git分支管理

分支相关命令 git branch:创建分支,git branch dev git checkout <name>:切换分支 ,git checkout dev git checkout -b dev:创建+切换分支 git merge <name>:合并分支当当前分支,git m......

Kevin-air
2016/08/02
10
0
如果非得了解下 git 系统… – 实践篇

原文出处:野兽 git的定义是一个内容寻址文件系统。内容、寻址、文件、系统,该来的总会来的… 本文旨在通过实践来介绍.git文件夹中的目录及文件功能,属git基础知识。但在此基础上可解决各g...

野兽
09/15
0
0
GIT科普系列3:底层存储机制Internal Objects

题记: 近期连续写了几篇关于git的博文,大多从日常使用过程中遇到的难点入手(例如冲突、回滚、放弃本地修改),目的是希望能够让大家从博文中找到可以直接用于实战的经验,因此并没有像其他...

zssureqh
2016/08/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

PHP生成CSV之内部换行

当我们使用PHP将采集到的文件内容保存到csv文件时,往往需要将采集内容进行二次过滤处理才能得到需要的内容。比如网页中的换行符,空格符等等。 对于空格等处理起来都比较简单,这里我们单独...

豆花饭烧土豆
36分钟前
1
0
使用 mjml 生成 thymeleaf 邮件框架模板

发邮件算是系统开发的一个基本需求了,不过搞邮件模板实在是件恶心事,估计搞过的同仁都有体会。 得支持多种客户端 支持响应式 疼彻心扉的 outlook 多数客户端只支持 inline 形式的 css 布局...

郁也风
39分钟前
4
0
让哲学照亮我们的人生——读《医务工作者需要学点哲学》有感2600字

让哲学照亮我们的人生——读《医务工作者需要学点哲学》有感2600字: 作者:孙冬梅;以前读韩国前总统朴槿惠的著作《绝望锻炼了我》时,里面有一句话令我印象深刻,她说“在我最困难的时期,...

原创小博客
今天
3
0
JAVA-四元数类

public class Quaternion { private final double x0, x1, x2, x3; // 四元数构造函数 public Quaternion(double x0, double x1, double x2, double x3) { this.x0 = ......

Pulsar-V
今天
17
0
Xshell利用Xftp传输文件,使用pure-ftpd搭建ftp服务

Xftp传输文件 如果已经通过Xshell登录到服务器,此时可以使用快捷键ctrl+alt+f 打开Xftp并展示Xshell当前的目录,之后直接拖拽传输文件即可。 pure-ftpd搭建ftp服务 pure-ftpd要比vsftp简单,...

野雪球
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部