Git安装与使用记录

一、Git安装配置

0.原理图

git原理图
一些主要概念:

Workspace:工作区 
Index / Stage:暂存区	
Repository:仓库区(或本地仓库)
Remote:远程仓库

1.安装Git

1.命令安装:

sudo apt-get install git

2.源码安装:

1、安装git依赖的软件

sudo apt-get update -y
sudo apt-get install build-essential libssl-dev gettext tcl8.4 tk8.4 zlib1g-dev libcurl4-gnutls-dev libexpat1-dev -y

2、下载git安装包
可通过GitHub上的git项目来获取所需的git源码版本的下载地址。
使用wget下载 git 源代码:

wget https://github.com/git/git/archive/v2.21.0.tar.gz -O git.tar.gz

3、解压git安装包

tar -zxvf git.tar.gz
cd git-2.21.0

4、创建包并进行安装 git

make prefix=/usr all
sudo make prefix=/usr install

5.版本查看

git --version

2.配置Git

2.0配置用户信息

1.设置用户名

git config --global user.name "username"

2.设置邮箱 (没有双引号)

git config --global user.email useremail@qq.com

3.查看用户名和密码

git config user.name
git config user.email

4.网页端创建验证用的密钥

ssh-keygen -C 'you email address@gmail.com' -t rsa(注意ssh与-keygen之间没有空格)

说明:
执行以上命令会在用户目录~/.ssh/下建立2个相应的密钥文件,一个公有的(id_rsa.pub),一个私有的(id_rsa)。
进入~/.ssh文件夹,使用gedit id_rsa.pub,打开id_rsa.pub文件,复制其中所有内容。
接着登陆GitHub,打开“settings”,“SSH Keys”页面,粘贴刚才复制的内容,创建密钥。
创建好密钥后的界面
5.可以使用 命令来测试连接是否畅通

ssh -T git@git.oschina.net

6.查看其他配置信息(git设置列表)

git config --list

2.1查看是否创建连接

git remote

2.2创建连接

git remote add origin + git项目仓库地址
git remote remove origin      //与远端解除绑定

二、Git常用操作

0.初始化一个本地仓库
git init dirname
1.创建分支、切换分支
git branch dev		//创建一个新的分支
git checkout dev 或 git switch dev 	//切换分支

一句话搞定:

git checkout -b dev 	//创建一个新的分支并进入该分支
2.同步代码
0.提交至本地仓库

	git add 要提交的文件 (提交指定文件)
	git add * 		会忽略.gitignore把任何文件都加入
	git add .  		提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
	git add -A  	提交所有变化
	git add -u  	提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)
	
	接下需要commit一下:
	git commit -m"一些提交说明"
	
1.本地同步至服务器
	git push -u origin master		//注意第一次推送的时候可以加上 -u 参数
	git push orign dev
	
2.服务器同步至本地
	git fetch --all		//下载远程的库的内容,不做任何的合并
	git reset --hard origin/dev		//把HEAD指向刚刚下载的最新的版本
	
3.次分支合并至主分支
要往哪个分支合并,先切换到该分支(比如:将dev分支内容合并至master,先将分支切换到master)
git switch master 	//	切换至master分支
git merge dev		//意思是将dev分支的内容合并到master
git merge --abort		//如果未commit,可以放弃合并;如果已经commit,回退版本
4.强制将dev分支合并到master
方法1:
切换到本地项目根目录:
	git push origin dev:master -f   //将 dev分支强制推送合并至master
方法2:
切换到本地项目根目录:
git checkout master //切换分支至master分支
git reset --hard dev //并将master分支重置为dev
git push origin master --force //将重置后的master分支强制推送更新(相当于删除master分支,test将其覆盖,并推送远程仓库)

三、不常用操作

3.1回退到以前的某个版本

方式一:reset(不推荐)

通过reset的方式,把head指针指向之前的某次提交,reset之后,后面的版本就找不到了。

操作步骤如下:

1、在gitlab上找到要恢复的版本号,如:

139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96 

2、在客户端执行如下命令(执行前,先将本地代码切换到对应分支):

git reset --hard 139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96 

3、强制push到对应的远程分支(如提交到develop分支)

git push -f -u origin develop
方式二:revert(推荐)

这种方式不会把版本往前回退,而是生成一个新的版本。所以,你只需要让别人更新一下代码就可以了,你之前操作的提交记录也会被保留下来。
操作步骤如下:

1、找到你误提交之前的版本号	(	git log  或者  git reflog )

2、git revert -n 版本号

3、git commit -m xxxx 提交

4、git push 推送到远程

5、通知其他人更新代码

3.2回退至最近提交的一次版本

git reset --hard HEAD^      //版本回退,工作区和库区都进行相应的回退。

四、搭建Gitlab服务

说明:
gitlab需要至少4GB的内存,因为操作系统和其他应用进程都会使用内存。如果服务器的内存低于4G,配置gitlab的时候将会出错,使用gitlab的时候将有更多错误。

安装过程参考:
参考1:

https://blog.csdn.net/weixin_45074569/article/details/108549280

参考2:

http://adairjun.github.io/2016/12/20/gitlab/

五、遇到的问题(待补充。。。)

5.1git如何对字母大小写敏感?例如有两个同名文件夹,Test和test?

查看目前区分大小写状态:
git config core.ignorecase  (正常为true,代表不区分大小写)
区分大小写,设置如下命令:
git config core.ignorecase false
如果不区分大小写,则:
git config core.ignorecase true
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值