05.git的使用,github远程仓库的使用,搭建git服务器

一 .git的概述

1.基本概念

Git是分布式版本控制系统,它没有*服务器,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。本地可以形成一个闭环。
05.git的使用,github远程仓库的使用,搭建git服务器
而SVN是集中式版本控制系统,版本库是集中放在*服务器的,而干活的时候,用的都是自己的电脑,所以首先要从*服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到*服务器。

git工作流程如下所示:
1.从远程仓库中克隆 Git 资源作为本地仓库。
2.从本地仓库中checkout代码然后进行代码修改
3.在提交前先将代码提交到暂存区。
4.提交修改。提交到本地仓库。本地仓库中保存修改的各个历史版本。
5.在修改完成后,需要和团队成员共享代码时,可以将代码push到远程仓库。
下图展示了 Git 的工作流程:
05.git的使用,github远程仓库的使用,搭建git服务器

2.git命令记载

分割线===================================================================分割线
在下面正式使用之前,请安装好git和TortoiseGit乌龟,后面会附上安装资源,安装只要无脑点next即可

二.git的使用

1.创建版本库

版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每san’z个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。由于git是分布式版本管理工具,所以git在不需要联网的情况下也具有完整的版本管理能力。
三种方式:
创建文件夹F:\study\repositorys。这个文件夹下做演示的文件夹,在里面创建一个r1作为本地仓库。
(1)右击选中gui here,然后点击Create New Repository,选中上面repo1路径即可,点击确定。
(2)在r1下点击git bash,命令行输入git init即可
(3)通过乌龟,在r1下直接右击点击“git在这里创建版本库”即可
当看到.git文件夹则已创建成功,注意这个文件夹是隐藏的,要设置可见隐藏文件夹。

2.添加文件并提交文件

(1)添加,点中文件右击选择乌龟,点击add(添加)点击确定
(2)提交,添加过的文件有一个+标记,右击git提交master,必须填写日志,写完后点击确定
其实r1目录是工作区,在这个目录中的“.git”隐藏文件夹才是版本库。
第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。
05.git的使用,github远程仓库的使用,搭建git服务器

3.修改

修改r1下某个文件,右击选择git提交master,填写提交日志,提交即可。
此外乌龟还携带了还原和删除功能,就是每次点击完后,右击git提交master。

4.案例,传java文件到版本库中

05.git的使用,github远程仓库的使用,搭建git服务器
右击项目目录,点击add添加,点击确定
05.git的使用,github远程仓库的使用,搭建git服务器
05.git的使用,github远程仓库的使用,搭建git服务器
对于文件夹下不想上传版本库的文件,或者可以说是没必要上传的,比如.idea这是配置的文件夹,没必要,则选中文件夹,选择乌龟中的删除并添加到忽略列表点击根据名称。。选择上面两个选项确定,之后点击git提交master完成上传。版本库中不会包含那个文件,但是工作目录会有。

三.github的使用

05.git的使用,github远程仓库的使用,搭建git服务器
05.git的使用,github远程仓库的使用,搭建git服务器

1.利用ssh上传

(1)获得**
输入命令ssh-****** -t rsa,回车好几次,并根据黄线画出的地址,找到私钥和公钥,记事本打开公钥。
05.git的使用,github远程仓库的使用,搭建git服务器05.git的使用,github远程仓库的使用,搭建git服务器
(2)github配置
把前面得到的公钥输入进去,点击add
05.git的使用,github远程仓库的使用,搭建git服务器
05.git的使用,github远程仓库的使用,搭建git服务器
(3)命令行方法push
05.git的使用,github远程仓库的使用,搭建git服务器
在r1文件夹下右击git bash,输入命令 git remote add origin [email protected]:zbelieve/r1.gitgit push -u origin master
点击yes即可。
(4)使用TortoiseGit上传。
右击乌龟点击设置
05.git的使用,github远程仓库的使用,搭建git服务器
05.git的使用,github远程仓库的使用,搭建git服务器
右击git同步,点击推送
05.git的使用,github远程仓库的使用,搭建git服务器

2.利用https上传

05.git的使用,github远程仓库的使用,搭建git服务器
利用乌龟,直接输入这个url输入用户名密码即可。
然后选择同步。

四.搭建私有服务器

1、安装git服务环境准备
yum -y install curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel gcc cc
2、下载git-2.5.0.tar.gz
1)解压缩
2)cd git-2.5.0
3)autoconf
4)./configure
5)make
6)make install
3、添加用户
adduser -r -c ‘git version control’ -d /home/git -m git
此命令执行后会创建/home/git目录作为git用户的主目录。
5、设置密码
passwd git
输入两次密码
6、切换到git用户
su git
7、创建git仓库
git --bare init /home/git/first
注意:如果不使用“–bare”参数,初始化仓库后,提交master分支时报错。这是由于git默认拒绝了push操作,需要.git/config添加如下代码:
[receive]
denyCurrentBranch = ignore
推荐使用:git --bare init初始化仓库。

私有git服务器搭建完成后就可以向连接github一样连接使用了,但是我们的git服务器并没有配置**登录,所以每次连接时需要输入密码。
使用命令连接:
$ git remote add origin ssh://[email protected]/home/git/first
这种形式和刚才使用的形式好像不一样,前面有ssh://前缀,好吧你也可以这样写:
$ git remote add origin [email protected]:first
使用TortoiseGit同步的话参考上面的使用方法。

五.分支的概念

每次的提交,Git都把它们串成一条时间线,这条时间线就是一个分支。一般自己开发的时候,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD指针严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。
开始时候比如有两个分支即指针,然后在v4版本的时候,创立了分支dev,之后可以两个分支开发,最后还能合并。其实两个分支就是两个指针
05.git的使用,github远程仓库的使用,搭建git服务器

05.git的使用,github远程仓库的使用,搭建git服务器
创建分支
在本地仓库文件夹中点击右键,然后从菜单中选择“创建分支”:
05.git的使用,github远程仓库的使用,搭建git服务器
如果想创建完毕后直接切换到新分支可以勾选“切换到新分支”选项或者从菜单中选择“切换/检出”来切换分支:
05.git的使用,github远程仓库的使用,搭建git服务器