超级详细的Git使用教程

2022-12-24 0 694

1 如是说

1.1 具有的机能

协同修正备份版管理工作权限掌控历史纪录组成部分管理工作

1.2 管理工作辅助工具辅助工具

封闭式管理工作辅助工具辅助工具CVS、SVN、VSS分布式系统管理工作辅助工具辅助工具Git、Mercurial、Bazaar、Darcs

1.3 Git竞争优势

绝大部分操作方式在邻近地区顺利完成,不须要互联准确性确保尽量加进统计数据而并非删掉或修正统计数据组成部分操作方式十分方便快捷简洁与Linux指示全面性相容

2 Git与GitLab的加装

2.1 Git加装

2.1.1 浏览镜像

https://git-scm.com/

2.2 GitLab加装

2.2.1 浏览

# 浏览gitlab wgethttps://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-8.8.5-ce.1.el7.x86_64.rpmhttps://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/# 怎样查阅是el6却是el7? uname -a 或是 cat /proc/version

2.2.2 继续执行

rpm -ivh gitlab-ce-8.8.5-ce.1.el7.x86_64.rpm

2.2.3 修正实用性重要信息

vi /etc/gitlab/gitlab.rb 修正external_url的门牌号,加进端口号为9090:(external_url http://localhost:9090) external_url http://localhost:9090

2.2.4 运行指示

# 启动实用性 gitlab-ctl reconfigure # 如果实用性有更新,则继续执行gitlab-ctl reconfigure进行更新实用性 # 启动Gitlab gitlab-ctl restart # 访问路径 http://192.168.71.143:9090 # 【注意防火墙的开关】关闭防火墙 systemctl stop firewalld # 默认用户名为root,密码为第一次设置的密码。

2.2.5 问题

# 问题1 提示UTF8的问题 解决方案: 在 ~/.bash_profile加进 export LC_ALL=“zh_CN.UTF-8” export LC_CTYPE=“zh_CN.UTF-8” 然后source ~/.bash_profile # 问题2 提示policycoreutils-python没有这个依赖 yum install -y policycoreutils-python

三 Git结构

3.1 工作区

写代码。采用git add就可以把工作区的内容加进到暂存区了。

3.2 暂存区

临时存储。采用git commit 就把暂存区的内容放到邻近地区库了。

3.3 邻近地区库

历史版。

3.4 Git和代码托管中心

代码托管中心的任务:维护远程库。

局域网环境下GitLab服务器外网环境下GitHub码云

3.5 邻近地区库和远程库

团队内部协作跨团队协作

四 Git指示行操作方式

4.1 邻近地区库初始化

# 指示 cd /Users/liangyafei/IdeaProjects/git_demo git init # .git目录中存放的是邻近地区库相关的子目录和文件,不要删掉,也不要胡乱地修正。 git add

4.2 设置签名

形式用户名:zydgbbsEmail门牌号:[email protected]指示# 项目级别/仓库级别 git config user.name zydgbbs git config user.email [email protected] # 查阅项目用户重要信息 cat .git/config # 系统用户级别 git config –global user.name zydgbbs git config –global user.email [email protected] # 查阅全局用户重要信息 cat ~/.gitconfig

4.3 加进及状态查阅

# 查阅状态 git status # 加进文件到暂存区 git add good.txt # 从暂存区撤销 git rm –cached good.txt # 提交文件到邻近地区库gitcommit good.txt -m upload good.txt # 当修正good.txt后,可以采用下面的指示恢复如初 git checkout — good.txt # 当修正good.txt后,添加至暂存区,可以采用下面的指示撤销 git reset HEAD good.txt # 再次提交到邻近地区库 git commit good.txt -m update

4.4 版的前进或后退

# 查阅版历史 git log # 用漂亮的格式展示 git log –pretty=oneline git log –oneline git reflog #其中的结果:HEAD@{2},2代表移动到当前版须要2步。# 对版进行前进或是后退 # 1 基于索引值操作方式【推荐】,可以前进也可以后退 # 回退到索引为d9e9d6e的版 git reset –hard d9e9d6e # 2 采用^符号,只能后退 # 往后退一步 git reset –hard HEAD^ # 往后退三步 git reset –hard HEAD^^^ # 3 采用~符号,只能后退 # 往后退三步也可以这么写 git reset –hard HEAD~3hard、soft、mixed的区别 soft:仅仅移动HEAD指针。 mixed:在邻近地区库移动HEAD指针,重置暂存区。 hard:在邻近地区库移动HEAD指针,重置暂存区,重置工作区。

4.5 删掉的文件找回

# 1 永久删掉的文件找回 rm -rf good.txt git add good.txt git commit -m delete # 回归到前一个有good.txt的版 git reset –hard c31a14f # 2 提交到暂存区的文件找回 rm -rf good.txt git add good.txt git status # 下面的指示即可恢复 git reset –hard HEAD

4.5 比较文件

# 比较的是工作区和暂存区的区别 git diff good.txt # 加HEAD比较的是邻近地区库的区别 git diff HEAD good.txt # 和历史版进行比较 git diff HEAD^ good.txt

4.6 组成部分操作方式

# 1 创建组成部分 git branch hot_fix # 2 查阅组成部分 git branch -v # 3 切换组成部分 git checkout hot_fix # 4 合并组成部分 # 主干合并其他组成部分 git checkout master git merge hot_fix # 5 解决冲突 git status #删掉特殊符号,修正文件,保存退出。 git add good.txt git commit -m resolve conflict #此时commit一定不能要带文件名。

4.7 创建远程库别名

# 查阅远程库别名 git remote -v # 创建别名git remote add origin https://github.com/zydgbbs/git_demo.git# GitHub须要设置Deploy keys # 生成key ssh-keygen -t rsa -C “admin@zydgbbs.com” # 然后把下面的内容复制到https://github.com/zydgbbs/git_demo/settings/keys,加进develop key中。 cat ~/.ssh/id_rsa.pub # 问题解决:https://www.cnblogs.com/wayne-tao/p/15941763.htmlgit remote set-url origin https://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@github.com/zydgbbs/git_demo.git # 然后推送到远程库 git push origin master # 可以为主干改名字git branch -M main

4.8 克隆操作方式

git clone https://github.com/zydgbbs/git_demo.git # 克隆的三个效果 1 完整地把远程库浏览到邻近地区 2 创建origin远程门牌号别名 3 初始化邻近地区库

5 总结

上面的git指示本人已全部一一验证,大家没事的时候,可以搭建个Git环境,继续执行下上面的指示,有什么不清楚的地方,欢迎随时留言交流。

【温馨提示】

点赞+收藏文章,

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务