Git环境搭建

为什么要用 Git

  1. 可能代码会写错 ==> Git可回退到之前版本
  2. 需求会变 ==> Git可保存多个版本

使用

安装git

下载地址:
https://git-for-windows.github.io/

https://tortoisegit.org/download/

下载如下软件,直接下一步执行即可

// 基础环境
Git-2.11.1-64-bit.exe

// 可视化管理工具
TortoiseGit-1.8.14.0_64bit.1436148947.exe

// 可视化管理工具汉化(可选)
TortoiseGit-LanguagePack-2.2.0.0-64bit-zh_CN.exe

界面操作

汉化

点击关于,访问官网,下载,下载对应的语言包,并安装

PS: 在设置页面中,选择语言下拉菜单,只有英文,不知道是为什么。

命令行配置git

对于想装逼的,可以装这个。

step1: 配置用户信息

这里只需要配置一次即可:

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

step2: 创建仓库

cd: 改变当前文件路径
格式: cd 目录,例如: cd /d/
【注意】 命令之间有空格的

// 用于在当前文件夹下,创建一个新的仓库
git init

step3: 添加项目文件

  1. 在文件夹 右键,选择 TortoiseGit/add, 代表将文件添加进去

  2. 提交到项目中, 右键 选择 “Git Commit …”

【小技巧】 打出几个首字母之后,按 TAB 键 可以自动补全

windows 命令介绍


pwd:查看当前文件路径

/c/Users/Administrtor
系统下面的 c盘 下的 Users 文件夹下的 Administrator 文件夹


cd: 改变当前文件路径
cd /d/
【注意】 命令之间有空格的

github

http://www.github.com/

注册账号,新建仓库后,克隆

参考资料

TortoiseGit安装与配置
http://blog.csdn.net/renfufei/article/details/41647937

 

 

常用命令

当我想从远程仓库里拉取一条本地不存在的分支时:

git checkout -b 本地分支名 origin/远程分支名

// 保存当前未提交的文件
git stash save

// 提取上次保存的文件
git stash pop

// 移除仓库中的大文件
git filter-branch -f --prune-empty --index-filter 'git rm -rf --cached --ignore-unmatch gf-manager/node_modules' --tag-name-filter cat -- --all

git filter-branch -f --prune-empty --index-filter 'git rm -rf --cached --ignore-unmatch gf-manager/dist' --tag-name-filter cat -- --all


 

 

git config --global user.name "anancar"
git config --global user.email "616651001@qq.com"

 

操作资料

Git上手:使用Tortoisegit操作Git
https://www.cnblogs.com/Sroot/p/8963411.html

廖雪峰-Git教程
https://www.liaoxuefeng.com/wiki/896043488029600

 

 

寻找并删除Git记录中的大文件

https://harttle.land/2016/03/22/purge-large-files-in-gitrepo.html

 

Git撤销&回滚操作

https://blog.csdn.net/ligang2585116/article/details/71094887

使用事项

1. 不要提交无关文件

2. 不要提交过大的文件

Gitblit 服务器仓库使用

位置配置

然后编辑E:\Git_lib\data\defaults.properties 文件

#Git仓库的文件路径
git.repositoriesFolder = E:\Git_lib\GitRepository
#HTTP协议使用的端口号
server.httpPort = xxxport
#HTTPS协议使用的端口号, Tomcat的HTTPS默认使用的是8443端口
server.httpsPort = xxxport

Linux 下搭建gitlab

https://blog.csdn.net/u011241606/article/details/51471367

 

gitlab

 

Centos6.5 成功安装 gitblit

https://blog.csdn.net/weixin_38628533/article/details/80415497

启动命令

service gitblit start

常用命令

忽略已入库的文件修改

git update-index --assume-unchanged .emacs



取消忽略已入库的文件修改

git update-index --no-assume-unchanged

window server 2012 搭建git服务器

参考资料

https://blog.csdn.net/u011781521/article/details/78337632

 

gitlib 可以在 csdn 上下载,速度比较快。

 

 

Cannot assign requested address: bind

【解决办法】注意设置的地址,一定要使用内网地址来绑定

推送失败,采用 sourcetree 工具

选择 http:// 对应的链接

 

【后期扩展】 webhook 自动更新代码

需要用到 groovy

https://www.jianshu.com/p/97eff04df358

git合并分支时如何忽略某些文件不合并(保持原样)

在项目文件夹下,新建文件 

.gitattributes

内容如下:

apps\xxxx.class.php
xxxx.php

git bash 执行

git config merge.ours.driver true

https://bbs.csdn.net/topics/391838872

fatal: refusing to merge unrelated histories

因为他们是两个不同的项目,要把两个不同的项目合并,git需要添加一句代码,在git pull,
这句代码是在git 2.9.2版本发生的,最新的版本需要添加--allow-unrelated-histories

git pull origin master --allow-unrelated-histories

 

在Linux下搭建git服务器

// 创建一个git用户并赋予密码
useradd git
passwd git

// 创建仓库
cd /home/git

git init --bare repo.git

// 修改仓库的所有者
chown git:git repo.git


// 克隆 服务器 仓库文件。会按照要求输入用户名和密码
git clone git@ip:/home/git/repo.git

【特别注意】 clone时不能用绝对路径,只能写相对于git用户home的相对路径

错误:git@ip:gitosis-admin.git

正确:git@ip:/home/git/repositories/gitosis-admin.git

否则,容易出现如下错误:

https://blog.csdn.net/xyw591238/article/details/52806959

fatal: '/path/repo.git' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

fatal:  does not appear to be a git repository Could not read from remote repository.

问题及解决

git 提交 遇到 unpack failed: error Missing commit

https://segmentfault.com/q/1010000003036343

文中提到的方案并没有解决问题。实际采用的办法是,拷贝出来修改的文件,然后重新克隆项目,将修改的文件替换过去,再重新提交推送

 

设定git大小写敏感

<code>git config core.ignorecase false</code>

删掉之前的大小写错误文件或文件夹

需要重命名提交,改回来,再提交

https://www.jianshu.com/p/df0b0e8bcf9b

Gitlab 仓库管理

新闻,支持 release 发布栏目管理

https://baijiahao.baidu.com/s?id=1623623765490509546&wfr=spider&for=pc

 

Git 在团队中的最佳实践--如何正确使用Git Flow
https://www.cnblogs.com/cnblogsfans/p/5075073.html

用分支来设定:例如 release-0.0.1,然后在这个分支上,添加release目录,能够添加编译好的文件即可。

主页应用

可以用来制作个人主页

https://pages.github.com/

 

常用软件

sourcetree

https://www.sourcetreeapp.com/

注册bitbucket 账号,然后授权登录即可。

 

更改git的仓库地址

 

方法一:

git remote rm origin 
git remote add origin git@github.com:Liutos/foobar.git

方法二:

git remote origin set-url <URL> 
把<URL>替换成新的url地址。

方法三:

直接修改.git/config文件
--------------------- 
原文:https://blog.csdn.net/hahahhahahahha123456/article/details/81328244 

 

撤销分支上的提交

reset hard

https://cloud.tencent.com/developer/ask/49500

 

希望用代码库中的文件完全覆盖本地工作版本. 方法如下:
git reset --hard
git pull [https://www.cnblogs.com/wihainan/p/6010895.html https://www.cnblogs.com/wihainan/p/6010895.html

 

码云使用文档

完整文档

http://git.mydoc.io/

如何注册

http://git.mydoc.io/?t=179267

创建项目 (章节后半部分中采用命令行提交的方式可不看,因为可采用 “乌龟”的界面进行操作)

http://git.mydoc.io/?t=180676

TortoiseGit安装和使用的图文教程

https://blog.csdn.net/qq_14918243/article/details/61919041

 

廖雪峰的Git教程

https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

 

Tortoisegit图文使用教程

https://www.cnblogs.com/maojunyi/p/7735723.html

 

 

代码仓库

Gitblit 服务器仓库使用

位置配置

然后编辑E:\Git_lib\data\defaults.properties 文件

#Git仓库的文件路径
git.repositoriesFolder = E:\Git_lib\GitRepository
#HTTP协议使用的端口号
server.httpPort = 1010
#HTTPS协议使用的端口号, Tomcat的HTTPS默认使用的是8443端口
server.httpsPort = 8443

 

 

Linux 下搭建gitlab

https://blog.csdn.net/u011241606/article/details/51471367

Centos6.5 成功安装 gitblit

https://blog.csdn.net/weixin_38628533/article/details/80415497

启动命令

service gitblit start

<parsererror style="display: block; white-space: pre; border: 2px solid #c77; padding: 0 1em 0 1em; margin: 1em; color: black">

This page contains the following errors:

error on line 6 at column 112: error parsing attribute name

Below is a rendering of the page up to the first error.

</parsererror>

Ubuntu 16.04 安装 giblit

下载安装文件在csdn上下载比较快。目前本地是有成功运行的文件的

 

端口编辑 E:\Git_lib\data\defaults.properties 文件

#Git仓库的文件路径
git.repositoriesFolder = E:\Git_lib\GitRepository
#HTTP协议使用的端口号
server.httpPort = 1010
#HTTPS协议使用的端口号, Tomcat的HTTPS默认使用的是8443端口
server.httpsPort = 8443

 

yum install -y cronolog

启动gitblit脚本

start.sh

#!/bin/bash
SRC="/path/gitblit-1.8.0"
cd ${SRC}

echo "running gitblit server ...."
nohup java -Xmx512m -Xms512m -Xmn185m -Xss256k -jar gitblit.jar --baseFolder data 2>&1 | cronolog log.%Y-%m-%d.out >> /dev/null & 
echo "running gitblit server finish"


java -Xmx512m -Xms512m -Xmn185m -Xss256k -jar /home/tools/gitblit-1.8.0/gitblit.jar --baseFolder /home/tools/gitblit-1.8.0/data

stop.sh

#!/bin/sh
process=`ps -fe|grep "gitblit.jar" |grep -ivE "grep|cron" |awk '{print $2}'`
if [ !$process ];
    then
        echo "stop gitblit process $process ....."
        kill -9 $process
        sleep 1
else
    echo "gitblit is already stop!"
fi
posted @ 2017-03-01 11:56  lvye1221  阅读(21)  评论(0编辑  收藏  举报