Git

是什么及为什么使用

​ git是一个强大的版本控制工具

​ 例如在企业团队开发中,需要协同开发,每个人负责不同的模块,但又有可能依赖其他的模块

​ 使用git可以解决这些问题,同时还可以对版本进行严格的控制与管理

安装及配置

​ 官网:https://git-scm.com/download

​ 一路点击下一步,取消最后的两个选项,点finish

​ 安装完成后

配置用户名和邮箱

git config --global user.name "用户名"

git config --global user.email "邮箱地址"

配置后的文件在 C:\用户\{用户名}\.gitconfig文件中

   生成ssh 秘钥与 github相关联

1. ssh-keygen -t rsa -C "邮箱地址"

默认生成到当前用户 C:\用户\{当前用户}\.ssh\id_rsa.pub

2. 进入github官网,登陆后

3. Settings --> SSH and GPG keys --> New SSH key

4. 将文件中的秘钥全部复制到 key 中

基本概念介绍

master : 默认开发分支
origin : 默认远程版本库
Index/Stage : 暂存区(工作区和版本库之间)  add后的区域
workspace : 工作区  init后的区域
repository : 本地仓库  commit后的区域
remote : 远程仓库 github
head : 指针 可以通过指针切换版本

常用命令

git init : 初始化仓库 把这个目录变成Git可以管理的仓库

git add 文件名: 添加文件 直接写符号.将(全部文件) 把文件添加到本地仓库的暂存区

git commit -m  "提交 注释" 提交到当前分支

git remote add origin 远程仓库地址 :远程仓库与本地仓库添加关联  有关联后,就不用再写这行

git pull origin master : 在推之前先拉 更新代码

git push  -u origin master 将代码推到远程仓库

git log 查看日志

git status 查看当前仓库状态    

git rm -r --cached filename : 删除多与文件,只删除git上的文件不会删除本地的文件,删除之后commit提交即可

冲突

对同一行或者同一块区域的代码进行修改后,导致本地仓库与远程仓库无法合并,因为软件也不知道采用哪一段代码,需要人工解决

这是出现冲突后在推时出现的情况

冲突:不同的人修改了相同位置的代码

<<<<<<<HEAD 自己(当前分支)的代码 =======

======= 其他人的代码 >>>>>>>版本号(具体的版本号可以在命令行中查询)

手动解决冲突后提交或合并后提交即可

TortoiseGit:

​ 使用git bash 需要很多重复的操作克隆 提交 推送,可以使用视图化工具简化操作

​ 官网:https://tortoisegit.org/download/

​ 点击finish后,会进入配置

​ 填入用户名和邮箱

安装完成后可能会需要重启

重启完成后点击鼠标右键会出现

​ TortoiseGit --> settings 选择下方选项进行配置

安装完成后,在任意位置鼠标右键,可以完成快速克隆 提交...

Idea配置git

​ Settings --> Version Control

​ 登录

​ 如果选择上方的Enter token 登录

​ 需要登录github官网 创建token

可能出现的问题

1. 解决git clone 克隆慢

​ 开启代理(本人使用的ssr 默认端口是1080):

git config --global http.proxy socks5://127.0.0.1:1080

​ 关闭代理:

git config --global http.proxy ""

​ 如果代理没有关闭可能也会出现

fatal: unable to access 'https://github.com/xxx/xxx.git/': Failed to connect to 127.0.0.1 port 1080: Connection refused

​ 可以使用命令关闭也可以在

C:\Users\{用户名}\\.gitconfig 中删除proxy代理

2. 解决github.com 无法访问连接超时

​ 先在命令行ping官网 github.com

​ 如果ping不通

​ 在 C:\Windows\System32\drivers\etc\hosts 末尾添加

192.30.255.112  github.com git 
185.31.16.184 github.global.ssl.fastly.net

3.删除所有文件

git rm * -r
Copyright © TaoQZ 2019 all right reserved,powered by Gitbook作者联系方式:taoqingzhou@gmail.com 修订时间: 2024-11-19 17:25:43

results matching ""

    No results matching ""

    results matching ""

      No results matching ""