1.Git初次提交远程仓库流程
git config [--global] user.name "[name]" // 配置用户名称
git config [--global] user.email "[email address]" // 配置用户邮箱
cd <existing_repo> // 进入工程目录
git init // 初始化当前目录为仓库
git add .(filename) // 将当前目录中的所有文件都加入版本管理(添加文件到暂存区)
git commit -m “first commit” // 将修改提交到本地仓库(将暂存区增加到仓库中)
git remote add origin <远程仓库地址> // 指定远程仓库地址(可以为HTTP地址,也可以为SSH地址(提交代码时不需要输入账号密码))
git branch -M main // 将分支命名为main
git push -uf origin main // 把本地仓库的文件强制推送到远程仓库main分支
2. Git查看当前配置的远程库
要查看当前配置的远程仓库简短名称,可以使用git remote
命令
要查看远程仓库名称及其对应的地址,使用git remote -v
命令。
3. 本地文件修改提交至远程仓库流程
git add .(filename) // 将当前目录中的所有文件都加入版本管理
git commit -m "change"
git push origin main
4. Git远程仓库配置SSH(以github为例)
4.1 设置本地git账户邮箱和用户名
输入命令git config --global user.name "Git账号"
以及git config --global user.email "Git邮箱"
。
输入命令git config --global --list
,查看配置是否正确。
4.2 生成新的SSH密钥
输入命令ssh-keygen -t rsa -C "你的Git邮箱"
。
然后连续敲三次回车,如果没问题你会看到如下界面
输入命令cat ~/.ssh/id_rsa.pub
,查看生成的公钥。
也可以直接打开文件进行查看。
4.3 将SSH公钥添加至Github账户
打开github,点击用户头像,再点击设置。
点击SSH
点击New SSH key
将id_rsa.pub的内容复制至Key中,输入Title后(Title不输入也可以,不输入的话会根据用户输入的Key自动填写),点击Add SSH Key。
添加成功。
4.4 验证SSH Key
在git bash 中输入ssh -T git@github.com
,然后输入yes。
- 注:如果使用的远程仓库为gitlab,则命令为
ssh -T git@gitlab.com
;使用其他远程仓库的话以此类推。
添加成功。
gitlab也是如此添加。
此后就可以使用SSH地址代替HTTP地址,这样在下载或上传代码时就不需要输入账号密码了。
5. Git config命令 查看配置信息
config 配置有system(系统级)、global(全局级)和local(本地级)三个。
5.1 system系统级
系统级配置文件含有系统里每位用户及他们所拥有的仓库的配置值。其位置为git的安装目录下的/etc/gitconfig
,即如果git的安装目录为D:\Program Files\Git
,则配置文件地址为D:\Program Files\Git\etc\gitconfig
。
优先度最低,其配置值可被全局级配置和本地级配置的值覆盖。一般我们很少会使用系统级的配置。
5.2 global全局级
全局级配置文件包含当前系统用户的拥有的仓库配置值,每个系统用户的全局级配置相互隔离。全局级别的配置默认保存在当前系统用户的主目录下的 .gitconfig 文件内。Windows通常保存在C:\Users\xxxx\.gitconfig
,Linux为/home/xxx/.gitconfig
。
优先度比系统级高,可覆盖系统级的配置值。全局级的配置平时使用得比较多,比如设置账号和邮箱:
git config --global user.name panyanbin
git config --global user.email me@panyanbin.com
5.3 local本地级
本地级别的配置保存在当前仓库下面的 .git\config 文件内,通常 .git 文件夹是隐藏的,Window要在文件管理器的文件夹选项中打开显示隐藏文件夹才可以看到。这里的配置仅对当前仓库有效,不影响其他的仓库。
优先级别最高,如果全局级别或系统级别的配置里出现了同一配置项,则以本地级别配置内容为准
5.4 总结
配置层级为:system-》global-》local。底层配置会覆盖顶层配置。
5.4.1 获取配置项的值
获取某一项配置时若不指定级别,则会从本地级开始一级一级往上查找直到配置不存在。即:先从本地级配置中开始查找配置项,若本地级不存在则往上从全局级别配置查找,若全局级别还是不存在该配置项就从系统级配置查找,若还是不存在则返回空。
git config --global get user.name
5.4.2 设置配置项的值
设置某一项配置时若不指定级别,则会配置项默认会设置到本地级的配置文件中,即设置配置项时默认使用--local
级别。若指定级别配置项就设置到该级别的配置文件中。
git config --global user.name panyanbin
5.4.3 删除配置项
与设置配置项一样,删除配置项若不指定级别,则默认使用--local
级别。指定级别则删除该级别的配置文件中的配置项
git config --global --unset user.name
5.4.4 获取所有配置项
查看具体配置信息的具体代码如下:
git config --system --list // 查看系统config
git config --global --list // 查看当前用户(global)配置
git config -- local --list // 查看当前仓库配置信息
若不指定配置级别,则会返回3个级别的配置,从上往下按系统级别、全局级别、本地级别的顺序进行输出显示。