05.git的使用,github远程仓库的使用,搭建git服务器,以及上传时候的错误

一 .git的概述

乌龟资源https://download.csdn.net/download/qq_27552845/12351611

1.基本概念

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

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

2.git命令记载

  1. git init //初始化仓库

  2. git add .(文件name) //添加文件到本地仓库

  3. git commit -m “first commit” //添加文件描述信息

  4. git remote add origin + 远程仓库地址 //链接远程仓库,创建主分支

  5. git pull origin master // 把本地仓库的变化连接到远程仓库主分支

  6. git push -u origin master //把本地仓库的文件推送到远程仓库
    分割线===================================================================分割线
    在下面正式使用之前,请安装好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提交更改,实际上就是把暂存区的所有内容提交到当前分支。
在这里插入图片描述

3.修改

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

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

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

三.github的使用

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

1.利用ssh上传

(1)获得密钥
输入命令ssh-keygen -t rsa,回车好几次,并根据黄线画出的地址,找到私钥和公钥,记事本打开公钥。
在这里插入图片描述在这里插入图片描述
(2)github配置
把前面得到的公钥输入进去,点击add
在这里插入图片描述
在这里插入图片描述
(3)命令行方法push
在这里插入图片描述
在r1文件夹下右击git bash,输入命令 git remote add origin git@github.com:zbelieve/r1.gitgit push -u origin master
点击yes即可。
(4)使用TortoiseGit上传。
右击乌龟点击设置
在这里插入图片描述
在这里插入图片描述
右击git同步,点击推送
在这里插入图片描述

2.利用https上传

在这里插入图片描述
利用乌龟,直接输入这个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://git@192.168.25.156/home/git/first
这种形式和刚才使用的形式好像不一样,前面有ssh://前缀,好吧你也可以这样写:
$ git remote add origin git@192.168.25.156:first
使用TortoiseGit同步的话参考上面的使用方法。

五.分支的概念

每次的提交,Git都把它们串成一条时间线,这条时间线就是一个分支。一般自己开发的时候,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD指针严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。
开始时候比如有两个分支即指针,然后在v4版本的时候,创立了分支dev,之后可以两个分支开发,最后还能合并。其实两个分支就是两个指针
在这里插入图片描述

在这里插入图片描述
创建分支
在本地仓库文件夹中点击右键,然后从菜单中选择“创建分支”:
在这里插入图片描述
如果想创建完毕后直接切换到新分支可以勾选“切换到新分支”选项或者从菜单中选择“切换/检出”来切换分支:
在这里插入图片描述

六.常见错误与解决方案

1.错误1
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: ‘git pull …’) before pushing again.
hint: See the ‘Note about fast-forwards’ in ‘git push --help’ for details.

在这里插入图片描述
解法方案:
有如下几种解决方法:

    1,push前先将远程repository修改pull下来

    $ git pull origin master

    $ git push -u origin master

    2,使用强制push的方法:

    $ git push -u origin master -f 

    这样会使远程修改丢失,一般是不可取的,尤其是多人协作开发的时候。

    3,若不想merge远程和本地修改,可以先创建新的分支:这个后面再说,有点麻烦

    $ git branch [name]

    然后push

2.错误2Updates were rejected because the remote contains work that you do

·正确步骤(注意第4和第5步):

  1. git init //初始化仓库

  2. git add .(文件name) //添加文件到本地仓库

  3. git commit -m “first commit” //添加文件描述信息

  4. git remote add origin + 远程仓库地址 //链接远程仓库,创建主分支

  5. git pull origin master // 把本地仓库的变化连接到远程仓库主分支

  6. git push -u origin master //把本地仓库的文件推送到远程仓库

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值