当前位置:   article > 正文

Git与GitHub\GitLab的介绍和使用_git github gitlab

git github gitlab

1.历史

写这篇文章前,首先要致敬大佬--------->  Linus  。2005年他用C语言编写了Git,主体程序开发完成只用了两周,一个月后大佬的Linux系统代码由Git管理。2008年,GitHub上线。

2.Git的优势

  • 大部分操作在本地完成
  • 完整性保证
  • 尽可能添加数据而不是删除或修改数据
  • 分支操作非常快捷流畅
  • 与Linux命令完美兼容

3.Git的安装

Git的下载地址   Git

4.Git本地操作

4.1 打开终端Git Bash

4.2 Git本地初始化及其创建用户和邮箱

4.3 Git本地提交相关操作

  1. git status 查看 所在分支/工作区/暂存区信息
  2. git add  [fileName] 将新增或修改的文件添加到暂存区
  3. git rm --cached fileName 将新增的某个文件从暂存区移除
  4. git commit [fileName] -m "我的注释" 提交到本地库

4.4 Git本地前进后退版本相关操作

  1. git log --oneline 显示历史版本信息  hash值前7位--代码注释
  2. git log --pretty=oneline 显示历史版本信息  hash值--代码注释
  3. git reflog 显示所有版本信息  hash值前7位--指针--状态--代码注释
  4. git reset --hard hash值 根据hash值回退或前进到这个版本
  5. git reset --hard HEAD 将已经add的文件全部回退,其实就是当前版本不作修改
  6. git reset --hard HEAD^ 回退一个版本
  7. git reset --hard HEAD~n 回退n个版本

4.5 Git本地比较文件相关操作

4.6 Git本地分支相关操作

4.6.1 Git本地分支示意图

4.6.2 Git本地分支命令

5.Git工作原理

  • Git底层采用的是 SHA-1 算法,保证数据完整性;

  • 以文件变更列表的方式存储信息,这类系统将它们保存的信息看作是一组基本文件和每个文件随时间逐步累积的差异;

  • Git 把数据看作是小型文件系统的一组快照。每次提交更新时Git 都会对当前的全部文件制作一个快照并保存这个快照的索引。为了高效,如果文件没有修改,Git 不再重新存储该文件,而是只保留一个链接指向之前存储的文件。所以Git 的工作方式可以称之为快照流

  • Git分支管理的本质是创建和移动指针

到这里估计你肯定掌握本操作了,那么可以删除掉刚才的所有文件了,包括.git。

然后自己创建几个目录,我这里创建了3个

E:\zmjjobsGitWorkSpace 这个作为创建者使用

E:\zmj1314GitWorkSpace 这个作为成员使用

E:\zmj8888GitWorkSpace   这个作为外部组织使用          

下面的讲解从新开始。。。

6.Git与GitHub之间的操作

6.1 Git本地与外部代码托管中心GitHub交互图

6.2 Git与GitHub间操作详细步骤

注册账号很简单,我就不介绍了。官网地址:GitHub: Let’s build from here · GitHub

6.2.1 GitHub修改profile

6.2.2 GitHub创建新项目

  1. git remote add origin 远端git地址 给远端git地址起一个别名叫origin
  2. git remote -v 显示远端地址与别名
  3. git push [-u] origin master 将代码推送到远端

6.2.3 Git成员用户操作

如果有邀请,一般会有邮箱提醒。如果没有可以直接找创建者要邀请链接也可以

  1. git fetch [远程库地址别名] [远程分支名] 抓取远端代码
  2. git merge [远程库地址别名/远程分支名] 合并远端代码
  3. git pull [远程库地址别名] [远程分支名] 拉取远端代码,相当于git fetch + git merge
  4. git push [远程库地址别名] [远程分支名] 推送代码到远端

6.2.3 Git成员与成员间的操作

6.2.4 Git内部与外部组织的操作

6.2.4 Git SSH免密操作(如果操作系统支持自动免密就不用管了)

  1. cd ~
  2. #给指定的邮箱创建ssh密钥
  3. ssh-keygen -t rsa -C dream98job@126.com
  4. cd ~/.ssh
  5. ls
  6. #id_rsa id_rsa.pub known_hosts
  7. cat id_rsa.pub
  8. #ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDBFVn96nArLHItc5rkHCaBhKQNeDOnuIY9iGEdPb+d7044roOwCokADNWzrNAyppihMBY5+m5vK/CJqmd7w6SP/PPjqQBSeSuJpzgTdZrvI0aWvmdC/+JUxPS3OVkFRZcMNmqq/lXfE8CyCI2U5IOkat45ZiiRfxFQl9RXhn9oeAt4n+qioFbkONbmMUcyEWI0/7NIL6UteWBFTzASvDnEUlzecNgsZCWyE9UXx2wF4KaCeLNTiLjYovDxOv4ObrUxW8+bQx8Lc6D++PQs/zXru0P55CfGK6OJOUS6uEoMvt1QgcrdZ332MvAb8f+tyOhIpSoVw6InN1VD8DYptNfRx3nM8QSA/E/xHjjeZ8Pe9i/rb2SBTrr9rLcy8/ulF4t2Z1wiBsXxp/S5q3qrOP+mGHXKLPk94nWwh+aQLfeY6KzvyMxhG5m1d2dXdgBwHO0MS3hL+fiIDgtg/uaSWYSNdQUc2KuMslLDJYLiS9baiIZazXdbhorhDTlAJkf8sSM= dream98job@126.com

点击头像 > Settings > SSH and GPG keys 

7. Eclipse使用Git

7.1 Eclipse的Git本地化

选中工程>右键>Team>Share Project>Git>>>

7.2 Eclipse的Git忽略文件

文件操作跟命令差不多,不介绍了,一看就会。这里主要说下Java语言的忽略文件。

首先在 .gitconfig文件加入内容,也就是指定忽略文件的地址,注意路径里面一定要使用 /

  1. [core]
  2. excludesfile = C:/Users/Administrator/Java.gitignore

新建一个文件Java.gitignore,然后将Eclipse的Navigator视图打开,加入自己想忽略的文件或目录即可,当然别忘了重启Eclipse。参考网址  GitHub - github/gitignore: A collection of useful .gitignore templates

  1. # Compiled class file
  2. *.class
  3. # Log file
  4. *.log
  5. # BlueJ files
  6. *.ctxt
  7. # Mobile Tools for Java (J2ME)
  8. .mtj.tmp/
  9. # Package Files #
  10. *.jar
  11. *.war
  12. *.nar
  13. *.ear
  14. *.zip
  15. *.tar.gz
  16. *.rar
  17. # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
  18. hs_err_pid*
  19. .classpath
  20. .project
  21. .settings
  22. target

7.3 Eclipse的Git工作流

7.3.1 模拟工作状态

  • 工程>右键>Team>Switch to>New branch>

  • 分支修改好文件后,推送到远端分支。如果成功后,远端分支会看到内容。

  • master合并hotfix分支,如果是在本地则选择本地也可。如果是其他人修改,或者本地没有了,则合并远端分支

8. GitLab

这里以Centos7为例

8.1 安装依赖包

  1. yum install policycoreutils openssh-server openssh-clients postfix
  2. systemctl enable sshd
  3. systemctl start sshd
  4. systemctl enable postfix
  5. systemctl start postfix

8.2 下载并安装rpm包

  1. cd /usr/local/
  2. mkdir rpm
  3. cd rpm
  4. wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.7.5-ce.0.el7.x86_64.rpm --no-check-certificate
  5. chown -R git:git /usr/local/rpm
  6. yum install policycoreutils-python
  7. rpm -ivh gitlab-ce-12.7.5-ce.0.el7.x86_64.rpm

8.3 修改配置文件

vim /etc/gitlab/gitlab.rb
  1. #可以配置成公网IP,我这里是本地
  2. external_url 'http://127.0.0.1:9345'

 8.4 重新加载并重启

  时间有点长,我上个厕所回来,还没完事

  1. gitlab-ctl reconfigure
  2. gitlab-ctl restart

8.5 页面访问Gitlab

输入服务器的IP地址访问即可。如果不能访问,请检查防火墙和配置信息

http://192.168.1.222:9345/

重置密码,比如111...aaa

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/490368
推荐阅读
相关标签
  

闽ICP备14008679号