git初始化流程
git config 配置
-
查看所有配置:
git config --list
-
查看系统级别配置:
git config --system --list
-
查看全局级别配置:
git config --global --list
-
查看仓库级别配置:
git config --local --list
-
查看特定配置项:
git config user.email
通过 git config 直接设置 key-value 时,如果不指定级别,默认修改的是仓库级别(--local)的配置。
通过文本编辑器编辑配置: git config --edit
修改编辑配置使用的文本编辑器:git config core.editor "vim"
已有仓库的初始化配置
git remote add origin https://github.com/gaohongy/graph_compiler.git
git branch -M main
git push -u origin main
修改远程仓库:git remote set-url origin https://github.com/新用户名/新仓库名.git
如果是空的仓库,需要 git remote add origin xxx.git
来添加远程仓库
验证远程仓库地址:git remote -v
暂存部分修改:git add -p <filename>
多用户主机上 git 提交隔离
目前在向 github 推送内容时,已经移除了用户名密码登陆方式,剩下的就是添加 ssh 密钥和使用 token 这两种方式,以使用 ssh 密钥为例
一个前提是,一台机器上的一个密钥只能绑定到一个 github 账户,所以需要首先通过 ssh-keygen
生成自己的密钥(可以将密钥存储到一个指定目录下),同时将 ssh 密钥存储到 github 上
下面的一个问题就是在 git push 时如何指定使用这一密钥,下面给出一个项目下的完整 git config 示例
其中的关键就在于 sshCommand
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
sshCommand = ssh -i /home/xxx/.ssh/id_rsa -F /dev/null
[remote "origin"]
url = git@github.com:Graph-Computing/GraphBLAST.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[user]
name =
email =
原始
1. 添加 SSH key
一台主机仅需要设置一次
1.1 检查主机是否已经有 SSH key
只需要检查~/.ssh
下是否存在 id_rsa.pub
或 id_dsa.pub
。若已存在,跳转至步骤3
1.2 生成 SSH key
$ ssh-keygen -t rsa -C "your_email@example.com"
参数含义
-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如邮箱。
-f 指定密钥文件存储文件名。
注:参数均可省略,以上代码执行过程中,密码可以设置为默认
1.3 将 SSH key 添加至 github
将步骤1提到的 id_rsa.pub
或 id_dsa.pub
文件中的内容写入以下位置:
github.com -> Settings -> SSH and GPG keys -> New SSH key
1.4 测试
$ ssh -T git@github.com
2. git 初始化
git init
3. 添加远程仓库地址
git remote add origin <remote repositorie address>
4. 正常操作
另一版
-
安装git,配置信息
git config --global user.name "youname" //配置GitHub名称 git config --global user.email "youemail" // 配置GitHub邮箱
-
生成密钥并存储到GitHub中
- 生成ssh key
ssh-keygen -t rsa -C "youremail"
-
在.ssh的文件夹(会保存到你指定的位置)下会出现两个文件 id_rsa 和 id_rsa.pub,打开后面那个文件,将其中的内容复制到GitHub的New SSH key中
-
连接本地和远程
git remote add origin yourSSH
-
在GitHub上建立仓库
-
在本地建立仓库
cd 要建立仓库的位置 git init
-
本地仓库和远程仓库建立通信
git remote add origin yourSSH
-
如果远程仓库不为空,需要先把远程的文件pull到本地,本地才能上传到远程
git pull origin master
-
推送操作
git add . // 工作区推送到暂存区 git commit -m "描述文字" // 暂存区推送到本地仓库 git push -u origin master // 本地仓库推送到远程仓库
-
GitHub存储逻辑
修改提交者信息
git commit --amend --reset-author
首先更改 .git/config
中的用户信息
弹出的页面可以修改提交信息等内容,可以直接退出,然后执行 git log
会发现最近一次提交的用户信息已经发生了修改
之后需要推送到远端,但是 git push
可能报错
! [rejected] main -> main (non-fast-forward)
error: failed to push some refs to 'github.com:xxx/yyy.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
自己操作的话,可以直接 git push -f
强制推送即可
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!