密钥管理
本地密钥生成
#查看ssh key是否存在
ls ~/.ssh/
#使用自己的邮箱生成ssh key
ssh-keygen -t rsa -b 2048 -C "email"
#查看本地ssh key
vim ~/.ssh/id_rsa.pub
密钥绑定
在个人信息里添加本地密钥
基础指令
全局配置信息设置
#查看所有全局属性
git config --list
--list:显示属性列表
#查看user.name属性值
git config user.name
#设置全局属性
git config --global user.name "nameVal"
--global:设置全局属性
user.name:属性名
"nameVal":属性值
PS:如果设置过全局用户信息,可以看到当前本地设置的user.name和user.email信息
仓库管理
#拉取仓库
git clone -b batch_name url
-b:设置拉取的仓库的分支
#添加当前文件到待修改缓存区
git add .
#提交修改信息
git commit -m "message"
#推送更新到仓库
git push
分支管理
#重命名远程分支对应的本地分支
git branch -m oldName newName
#删除远程分支
git push --delete origin oldName
#上传新命名的本地分支
git push origin newName
#把修改后的本地分支与远程分支关联
git branch --set-upstream-to origin/newName
#切换分支
git checkout branch_name
#合并某分支到当前分支
git merge <name>
#删除分支
git branch -d <name>
分支合并问题
git merge <name>
在算法模型的多分支管理下,不同分支dev,preprod,prod的代码版本要保持一致,但配置文件要互相独立,因此代码等共有部分可以通过merge进行同步,但要注意不能影响到自己分支下的配置文件
.gitignore
config
build
.gitignore可以设置文件不加入到版本管理中,即使执行了merge操作还能保持特定文件原有的数据
PS:不要像网上说的写好ignore文件后直接用 git rm -r --cached . 删除缓存再提交,这样push会直接删除仓库中对应的文件
PS:尽量在merge后修改再push,因为如果在修改部分文件后中进行merge操作是会提示你先提交修改再merge的