栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

git安装配置和使用(工作中需要了解的常用方法)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

git安装配置和使用(工作中需要了解的常用方法)

1.Git的概念安装配置

1.Git介绍 Git是一个开源的分布式版本控制系统,是目前世界上最先进,最流行的版本控制系统,可以快速高效的处理很小到非常大的项目版本管理. (特点:项目越大越复杂,协同开发者越多,越能体现Git的高性能和高可用性!)
2安装配置
**根据自己的操作系统,选择下载对应的 Git 安装包:
https://git-scm.com/downloads ** 安装后按window+R打开输入cmd或者输入powerShell (输入命令 git --version验证)

2.1配置用户信息
Git软件在工作的时候,需要知道你是谁?所以需要设置一个用户名和邮箱。

1.这个用户名和邮箱,最好使用你的github账号或码云账号(如果你有账号的话),当然随便填也可以。
(注意:如果使用了 --global 选项,那么该命令只需要运行一次,即可永久生效。
)
2.通过 git config --global user.name 和 git config --global user.email 配置的用户名和邮箱地址,会被写入到 C:/Users/用户名文件夹/.gitconfig 文件中。这个文件是 Git 的全局配置文件,配置一次即可永久生效。
具体做法:

  1. 任何文件夹,空白处,右键 --> Git Bash Here
  2. 依次执行下面两行命令
git config --global user.name "xxx"
git config --global user.email "xxx"

配置之后,可以通过下面的命令来检查是否配置成功了

# 查看所有的全局配置项
git config --list --global

# 查看单个的配置项,比如查看用户名
git config user.name

**使用 Git 管理的项目,拥有三个区域,分别是工作区、暂存区、Git 仓库。
三种状态
已修改modifdied:已修改表示修改了文件,但还没将修改的结果放到暂存区
已暂存staged:已暂存表示对已修改文件的当前版本做了标记,使之包含在下次提交的列表中
已提交 committed:已提交表示文件已经安全地保存在本地的 Git 仓库中
**
(注意:
工作区的文件被修改了,但还没有放到暂存区,就是已修改状态。
如果文件已修改并放入暂存区,就属于已暂存状态。
如果 Git 仓库中保存着特定版本的文件,就属于已提交状态。
)

  1. 初始化 Git 仓库的命令

git init

  1. 查看文件状态的命令

git status 或 git status -s

  1. 一次性将文件加入暂存区的命令

git add .

  1. 将暂存区的文件提交到 Git 仓库的命令

git commit -m “提交消息”

2.Git 分支

1.作用
在进行多人协作开发的时候,为了防止互相干扰,提高协同开发的体验,建议每个开发者都基于分支进行项目功能的开发,例如:

2.在初始化本地 Git 仓库的时候,Git 默认已经帮我们创建了一个名字叫做 master 的分支。通常我们把这个 master 分支叫做主分支。
在实际工作中,master 主分支的作用是:用来保存和记录整个项目已完成的功能代码。
因此,不允许程序员直接在 master 分支上修改代码,因为这样做的风险太高,容易导致整个项目崩溃。

3.功能分枝
由于程序员不能直接在 master 分支上进行功能的开发,所以就有了功能分支的概念。
功能分支指的是专门用来开发新功能的分支,它是临时从 master 主分支上分叉出来的,当新功能开发且测试完毕后,最终需要合并到 master 主分支上,如图所示:

4.查看分支列表 git branch (注意:分支名字前面的 * 号表示当前所处的分支。
)
5.创建新分支 使用如下的命令,可以基于当前分支,创建一个新的分支,此时,新分支中的代码和当前分支完全一样: git branch 分枝名称
6.切换分枝 可以切换到指定的分支上进行开发: git checkout login (在先前创建的( git checkout login )login 是要切换的分枝)
7.分支的快速创建和切换
注意:(-b 表示创建一个新分支 checkout表示切换到刚才新建的分支上)
“git checkout -b 分支名称” 是下面两条命令的简写形式:
git branch 分支名称
git checkout 分支名称
9.合并分支
功能分支的代码开发测试完毕之后,可以使用如下的命令,将完成后的代码合并到 master 主分支上:

(合并分支时的注意点:
假设要把 C 分支的代码合并到 A 分支,则必须先切换到 A 分支上,再运行 git merge 命令,来合并 C 分支!
)
10. 遇到冲突时的分支合并

11.分支合并,三方合并

  • 三方合并模式中,如果两个分支更改了不同的文件,则合并时会出现如下弹框
  • 这是告诉我们,合并成功了,但是,需要提交一次呀
  • 提交,就得写提交日志呀
  • 这个框,就是让我们写提交日志呢
  • 画面中,黄色的 “Merge branch add”是默认的提交日志
  • 如果使用默认的提交日志,则直接输入 “:q”即可完成合并
  • 如果要修改提交日志,则按 “i”进入 “插入模式”
  • 修改黄色的字(提交日志)
  • 按 “esc”退出“插入模式”
  • 输入 “:wq”退出,即可完成合并


12.删除本地分支
git branch -d 分枝名称

查看所有本地分支
                   git branch
创建新分支
               git branch 分支名  
比如,创建一个叫做login的分支
               git branch login
切换分支
                 git checkout 分支名
 比如,切换到login分支
                 git checkout login
 比如,切换到master分支
                  git checkout master
创建并直接切换分支
                   git checkout -b 分支名
3.远程仓库

码云:https://gitee.com/
github:https://github.com/

配置码云或github的SSH秘钥

我们向码云或github网站推送代码的时候,最好使用SSH的方案,这个方案需要提前配置好秘钥。下面是具体的配置方法。

任何文件夹位置,空白处右键,选择右键菜单中的 “Git Bash Here”,执行下面的命令,可以生成SSH秘钥(包含一个公钥一个私钥)

ssh-keygen -t rsa -C "你的邮箱地址"
# 比如
ssh-keygen -t rsa -C "tangfengpo@163.com"
# 执行完这个命令之后,后面有一些询问,我们直接一路回车即可

注意,回车执行命令,然后继续回车,回车…直至生成完毕~

最后生成的秘钥在:

Windows:
C:Users用户名.ssh

mac:
你的用户名那个文件夹中。 按shift+Commend+.  可以显示隐藏文件,然后就可以看到 .ssh文件夹了

找到 .ssh/id_rsa.pub,用vscode打开,复制里面全部的内容,配置到远程仓库,做法如下:

  • GitHub右上角的三角号
  • Settings
  • 左侧有 SSH and GPG keys
  • 在显示的界面中,点击右上角的 New SSH key,然后完成添加公钥操作
  • 码云的配置方式和Github一样。
创建远程仓库
  • 码云
    • 右上角的 “+” ,选择新建仓库
    • 填写仓库名,选择公开
    • 点击创建按钮,创建。
  • github
    • 右上角的 “+” ,选择 “New repository”
    • 填写仓库名称
    • 点击创建按钮,创建。
推送代码到远程【首次】
  • 进入本地项目文件夹,右键 --> Git Bash Here,打开终端窗口。
  • 远程仓库地址有两个(https、ssh地址),一定要选择ssh地址。
  • 添加远程仓库地址(git remote add 远程仓库地址别名 完整的远程仓库SSH地址 )
  • 首次推送代码到远程仓库(git push -u origin master)

只能把本地仓库的代码推送到远程仓库;不能把工作区的、暂存区的代码推到远程。

确保你的本地仓库有内容,别推送空的本地仓库。注意是本地仓库,不是工作区。

首次使用SSH,会出现如下画面,输入 “yes”,回车即可。后面就不会再有了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ecE8AVrl-1650809323613)(Git.assets/image-20200819170633759.png)]

再次及后续推送
  • 工作区编写代码
  • 执行 add 命令,将代码添加到暂存区
  • 执行 commit 命令,将代码提交到本地仓库。(因为只有本地仓库的代码才能推送到远程)
  • 执行 git push 命令,将这次改动推送到远程仓库。
常见问题
  • 执行完“git remote add origin ssh地址”报错:fatal:remote origin already exists.
    • 叫做 origin 的远程地址以及存在了。不能再使用这个名字了。
    • 执行 git remote -v 查看所有的远程地址。
    • 可以选择性的 删除 远程地址。执行 git remote remove 别名,比如 git remote remove origin
  • 首次推送的时候,提示输入账号密码
    • 因为添加远程地址的时候,填错了,填成了 https 地址了。应该换成 ssh 地址。
    • 可以选择改过来,也可以使用https地址。下次做项目,再使用ssh地址也可以。

git remote add 那里,地址复制错了,能改吗?

# 查看所有可用的源(可用的远程地址)
git remote -v
# 删除一个源
git remote remove 远程仓库地址别名
# 然后重新添加新的地址
git remote add 远程仓库地址别名 SSH地址

我电脑上有两个本地项目(仓库),能推送到一个远程仓库吗?

没人这么干!!!!!!!!两个项目放一起,会出现混乱或者覆盖的呀!!!

推送总是不成功?

  1. 检查一下SSH秘钥配置好了吗

  2. 看看什么错误,直接把前因后果告诉老师吧~~~

  3. 实在不行,重新创建一个仓库试试,从头再来。

管理员角色
  • 创建远程仓库 或 创建本地仓库之后推送到远程仓库
    • 初始化一个项目,git init
    • 添加初始的代码到暂存区 git add .
    • 提交初始的代码到本地仓库 git commit -m "提交了初始的代码"
  • 推送到远程仓库
    • git remote add origin SSH地址
    • git push -u origin master
  • 邀请成员
  • 开发(add / commit / pull / push)
    • 编辑自己的代码
    • 把修改后的代码,添加到暂存区 git add .
    • 把修改后的代码,推送到本地仓库 git commit -m "xxx"
    • 如果有人在你之前推送了,则推送之前需要先拉取,将拉取下来的代码和你的代码合并 git pull origin master
    • 合并如果有冲突,需要解决冲突,别忘记提交一次
    • 最后推送 git push origin master
成员角色
  • 同意邀请
  • 克隆项目到本地(注意路径)
    • 执行 git clone SSH地址 ,将项目克隆到本地。然后关闭黑窗口。
    • 进入项目文件夹,重新 git Bash Here 打开黑窗口,这样可以保证路径正确。
  • 开发(add / commit / pull / push)
    • 编辑自己的代码
    • 把修改后的代码,添加到暂存区 git add .
    • 把修改后的代码,推送到本地仓库 git commit -m "xxx"
    • 如果有人在你之前推送了,则推送之前需要先拉取,将拉取下来的代码和你的代码合并 git pull origin master
    • 合并如果有冲突,需要解决冲突,别忘记提交一次
    • 最后推送 git push origin master
分支和远程相关命令 查看远程分支
git remote show 仓库别名

# 比如,查看一个叫做码云的远程仓库的分支
git remote show origin

跟踪分支

跟踪分支就是把远程仓库的分支下载到本地

git checkout 远程分支名

# 比如有个远程分支,叫做user,把他下载到本地也叫做user
git checkout user

Git忽略

在项目中,创建 .gitignore 文件,它就是git的忽略文件,记录了哪些文件不被Git管理。

如果有的文件已经被Git管理了,而又想设置为忽略文件,则需要使用 git rm --cached 文件 将文件从仓库中移除才有效。

被成功忽略的文件,不会被添加到暂存区,不会被提交到本地仓库,不会被推送到远程仓库。这就是忽略的意思。

# 展示 .gitignore 的写法

# 忽略当前目录中的 test 文件夹
/test

# 忽略任何目录中的 test 文件夹
test/

# 忽略任何目录中的 png 图片
*.png

4.总结
  • 能够掌握 Git 中基本命令的使用

    • git init
    • git add .
    • git commit –m "提交消息"
    • git status 和 git status -s
  • 能够掌握 Git 分支的基本使用

    • git branch 查看分支

    • git checkout 分支名称

    • git checkout -b 新分支名称

    • git merge 分支

    • git push -u origin 新分支名称

  • 能够配置 SSH 访问

总之就是怎么学了

**安装后配置自己账号信息 把自己写的功能合并到主分支(就是主题上面)每次写完就保存到本地仓库 **
基本命令如下:
1.查看自己是否安装

2.查看配置自己的自己邮箱
git config --global user.name “xxx”
git config --global user.email “xxx”
查看所有的全局配置项
git config --list --global
查看单个的配置项,比如查看用户名
git config user.name
3.项目开始 在码云创建一个仓库 ,添加远程仓库地址,推送代码到仓库,创建分支两个 login index 共合并到主分支两次 注意: 提交合并方式



详细命令如下:
基础操作:
clera
	1. git  init 					项目初始化;

	2. git  add  .					所有文件添加到暂存区;

	学3. git  commit  -m  "XXXX"			暂存区文件添加到本地仓库;gitco

	学4. git  status  -s				查看所有文件状态;    
 
	5. git  log/reflog 				查看提交日历;

	6. git  reset  --hard  ID			版本切换;


分支操作:

	1. git  branch 					查看分支(主分支要提交一次);

	2. git  branch  XXX				创建分支(根据主分支创建);

	学3. git  checkout  XXX				切换分支;

	4. git  checkout  -b  XXX			创建并切换分支;

	5. 注意: 分支代码提交之后才能切换; 合并代码是站在主分支上,合并功能分支;

	学6. git  merge  XXX				主分支合并功能分支;
         7.  git    branch  -d   分枝名称            
             当把功能分支的代码合并到 master 主分支上以后,就可以使用如下的命令,删除对应的功能分支


远程仓库:

	1. 介绍: 本地仓库提交; 远程仓库创建(开源仓库,不要选默认添加文件);

	2. 介绍: https提交,ssh提交;ssh更安全,配置起来比较麻烦;

	3. git  remot  add  origin   https/ssh地址

	学4. git  push  -u  origin  master

	5. git  remote  -v      		查询变量中存储的地址

	6. git  remote  rm  origin  		删除变量


多人协作开发:

	1. git  clone  SSH/HTTPS地址		克隆仓库

	2. git  pull  origin  分支名称		拉取远程仓库分支里面最新的代码(拉取)

	3. git  remote  show  origin 		查看远程仓库分支

	4. git  checkout  远程分支 		跟踪分支(主分支拉,跟踪分支拉取在切换)

	5. 	.gitignore 这个文件,可以忽略文件和文件夹,脱离git的管理;

本着学习的态度,诸多不足希望评论纠正谢谢

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/838210.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号