git本地和git服务器的安装与应用

git是的优点与工作原理

git定义

Git是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有内容。

git和svn的区别

SVN是集中式版本控制系统,需要联网。
在这里插入图片描述
git是分步式版本控制系统,即使没有网也可以在本地进行版本控制开发。
在这里插入图片描述
Git 的工作流程:

在这里插入图片描述

git与tortoiesgit的安装

git的安装

git下载地址
安装的诀窍就是闭着眼下一步。

tortoiesgit的安装

tortoiesgit下载地址
一直下一步
配置开发者的用户名和邮箱
在这里插入图片描述
安装完成后。
在这里插入图片描述

git的应用

配置用户信息

 git config --global user.name "youlindongxiao" #设置用户名
 git config --global user.email "youlindongxiao@163.com" #设置邮箱

创建版本库

#选择一个空目录
git init 

概念:
版本库:“.git”目录就是版本库,将来文件都需要保存到版本库中。
工作目录:包含“.git”目录的目录,也就是.git目录的上一级目录就是工作目录。只有工作目录中的文件才能保存到版本库中。

提交文件到git版本库

  1. 在工作空间创建文件
touch test.txt
  1. 添加文件到暂存区
 git add test.txt
  1. 添加暂存区文件到本地版本库
 git commit -m '提交test'

版本比较和查看日志

git diff HEAD  HEAD^
git log

在这里插入图片描述

删除文件

  • 物理删除和恢复
rm test2.txt
git checkout -- test2.txt
  • git rm和恢复
git rm test2.txt #删除暂存区文件
git reset --hard HEAD^ #head 指针前移

共享版本库安装与使用

  1. 安装git服务环境准备
yum -y install curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel gcc cc
  1. 源码安装git
 tar -zxvf  git-2.5.0.tar.gz -C /usr/local #解压
cd /usr/local/git-2.5.0/ #进入目录
autoconf#自动加载配置
./configure #执行配置
make && make install #安装并编译报错,缺少perl依赖
yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker # 添加perl依赖
  1. 添加git用户并并切换目录
adduser -r -c 'git version control' -d /home/git -m git
passwd git
su - git
  1. 配置密钥登录
    服务器端生成公私钥
ssh-keygen -t rsa

客户端生成公私钥并上传服务器

ssh-keygen -t rsa #在客户端生成公私钥
ssh-copy-id git@192.168.1.159 #将公钥拷贝给服务器
  1. 创建git仓库
git --bare init /home/git/project/test

注意:如果不使用“–bare”参数,初始化仓库后,提交master分支时报错。这是由于git默认拒绝了push操作,需要.git/config添加如下代码:
[receive]
denyCurrentBranch = ignore
推荐使用:git --bare init初始化仓库。hito

  1. 同步服务代码到远端(客户端操作)
#在服务器创建项目 git --bare init /home/git/project/test
#创建本地与远端的联系
git remote add origin git@192.168.1.159:project/test
#推送代码到远端
git push -u origin master

如果已经存在关联,删除已经存在的关联,重复上述操作。

git remote rm origin
  1. 从远端服务器克隆代码
git clone git@192.168.1.159:project/test
  1. 从远端服务器获取代码
git fetch 
git pull # git fetch 再进行git merge
  1. 冲突与解决

两方对于同一个文件同一个版本的同一个位置做出修改的时候,提供时后提交的一方
error: failed to push some refs to ‘git@192.168.1.159:test’
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., ‘git pull …’) before pushing again.
hint: See the ‘Note about fast-forwards’ in ‘git push --help’ for details.

git pull # 先将最新的远端pull下来,

Auto-merging a2.txt
CONFLICT (content): Merge conflict in a2.txt
Automatic merge failed; fix conflicts and then commit the result.

git pull #手工处理
git add a2.txt
git commit -m '修改失败问价' #重新提交
git push -u origin master #提交到远端服务器

idea 配置git服务器

  1. 选择File→Settings打开设置窗口,找到Version Control下的git选项
    在这里插入图片描述
  2. 创建git仓库,
    在这里插入图片描述
  3. 配置忽略文件
    在这里插入图片描述
  4. 添加到缓存区
    在这里插入图片描述
  5. 提交到本地仓库
    在这里插入图片描述
  6. 服务器初始化仓库并配置远端仓库
git --bare init /home/git/pdf_sign

在这里插入图片描述
在这里插入图片描述

7.上传代码
在这里插入图片描述

  1. 一定要配置.ignore插件
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值