Git配置

为什么要用:下载zip只是当前分支,不能进行仓库push、pull、checkout

1. 下载Git

  • 先判断是否已经下过Git:
cmd 复制代码
git --version
  • 若没有版本号出来,就去下载:https://git-scm.com/downloads (Windows、linux、mac去找对应下载资源)

  • 如果有代理地址可以配置

cmd 复制代码
git config --global http.proxy ip:port
git config --global https.proxy ip:port

2. 配置Git账户

  • 先判断是否配置过:

  • 查看全局Git配置

    cmd 复制代码
    git config --global user.name
    git config --global user.email
  • 查看特定Git仓库信息

    cmd 复制代码
    git config user.name
    git config user.email
  • 查看所有Git配置项

    cmd 复制代码
    git config --list
  • 配置Git账户:

cmd 复制代码
git config --global user.name "xxx"
git config --global user.email "xxx"
  • 创建ssh密钥:ssh-keygen -t rsa -C "xxx"
java 复制代码
[root@]# ssh-keygen -t rsa -C "xxx"
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:lgf+3a1srOvDD0znv+/jiR3iwMaZtxW94k9FI1HzJAk xxx
The key's randomart image is:
+---[RSA 2048]----+
|            Eoo+.|
|              ooo|
|        .    . .o|
|       . o    ..o|
|        S . . ..o|
|       . oo+o+ .+|
|          .O+=o=.|
|          . Bo@+o|
|           .+@*BB|
+----[SHA256]-----+
  • 获取ssh密钥

  • windows:直接按照刚刚存放的路径打开,默认是/root/.ssh/id_rsa

  • mac:通过cat获取 cat /root/.ssh/id_rsa.pub

  • 配置ssh密钥

这个pub记事本打开然后复制进去:

gitcode为例:github一样(找SSH and GPG keys)

  • IDEA git clone不上,检查半天发现SSH代理没配置好。我在CentOS下设置的,可以问gpt找解决办法
    ①启动SSH代理:
bash 复制代码
 eval $(ssh-agent -s)

②将私钥添加到SSH代理:

bash 复制代码
ssh-add ~/.ssh/id_rsa

③测试是否能成功连接Git服务器:

bash 复制代码
ssh -T git@gitcode.net

如果遇到这个报错:

这个警告是因为你的私钥文件(/root/.ssh/id_rsa)的权限设置不安全。ssh-add 和 ssh 命令要求私钥文件的权限非常严格,以确保只有当前用户可以访问这个私钥

加个命令就行:

bash 复制代码
chmod 600 ~/.ssh/id_rsa

3. 检出代码

  • 检出地址:

  • 检出命令

    • 直接复制需要的工程地址
    cmd 复制代码
    git clone 工程地址
    • 指定分支 -b 分支名
    cmd 复制代码
    git clone -b 分支名 工程地址
  • 其他命令

    • git branch:查看当前工程分支

    • git branch -r:查看远程分支列表

    • git pull:拉取分支最新代码

    • git push:推送本地变更的代码

    • git fetch:后去远程仓库最新分支变动,这个很有用。在你想操作分支创建新或者看其他人的分支时候,先操作下 git fetch 看下最新的分支变动。

    • git merge origin/master:将远程分支的 master 代码合并到本地分支 master 上

  • IDEA运用

    • 只要代码是Git检出的,通过Git配置的IDEA打开工程,会自动被Git管理
    • 分支使用
  • 提交代码

  • 查看记录

  • 查看对比

  • 合并分支

    • merge:将一个分支的更改合并到当前分支,会生成一次新的合并提交,从而保留历史分支
    • rebase:重新定位一系列提交,线性提交
  • 冲突合并

    • 选择,你要从哪个分支合并到 test 分支。右键选择 Merge into test

    • 如果你合并到test分支的代码,有其他人也在同一行做了改变或者格式化了代码,就会弹出一个合并冲突。这个时候你需要点 Merge 进行合并。

    • 在点击 Merge 后,你会看到具体冲突的代码是什么,你可以有选择的从左右合并到中,最后点击 Apply。这个时候要注意不要把让别人的代码合并丢喽。

    • 合并完的代码,不要直接 push,你要先本地 install 看是否可以打包。以及如果可以运行的话,可以本地先跑一下。 最后 push 提交合并代码即可。

  • 回滚分支:回滚提交和回滚push

相关推荐
Patrick_Wilson6 小时前
为什么gitlab的MR会默认有一个merge commit
前端·git·gitlab
是乐乐啊呀7 小时前
版本控制 GIT 和 SVN
git·svn
夜鸣笙笙9 小时前
Git详细安装流程
git
瑞码空间1 天前
git知识点黄金笔记
笔记·git·elasticsearch
----云烟----1 天前
Git 提交忽略某些文件方法
git
切糕师学AI1 天前
如何查看已合并到 master 分支的所有分支?Git 分支清理指南
大数据·git·elasticsearch
DevUp1 天前
一个管「引」,一个管「抄」:Submodule 和 Subtree 到底差在哪
git·前端工程化
lingran__1 天前
Git 完全指南(三):远程仓库与标签管理
开发语言·git·gitee·ssh·团队协作·远程仓库·分布式版本控制
lingran__2 天前
Git 完全指南(二):分支管理
git·分支管理·版本控制·团队协作·多人开发·git flow
必须会一定会2 天前
Agent Handoff v0.6.0 跨电脑同步:Git、EVENTS.jsonl、CONTEXT.md 使用方法
人工智能·git·ai编程