远程仓库:Gitlab
系统:linux
工作环境:ubuntu
背景:小菜鸡配置Git, 遇到了好多小坑,记录一下
首先在终端创建git的用户名和邮箱:
git config --global user.name [your name]
git config --global user.email [your email]
# 以及方便大文件操作的配置
git config --global lfs.url [your url]
git config --global credential.helper []
git config --global push.default []
当然,也可以用更加直接的方式,直接编辑gitconfig文件
vim ~/.gitconfig
然后按照下面的格式对应填写就行了
[user]
name = dada
email = dada@niupi.com
[lfs] # 用于大文件操作
url = http://devce~lfs/ # 此处是服务器的地址,我这里填写的是公司的私服地址,不过如果是个人的配置,这个教程可能帮不到你,可能还要参考其他的配置方案
[credential]
helper=store
[push]
default=simple
大文件配置一些更具体步骤,可以参考这个链接
https://blog.csdn.net/weixin_39451323/article/details/107345496
创建好以后就是创建秘钥,如果已经有秘钥可以通过以下命令查看秘钥:
vim ~/.ssh/id_rsa.pub.
如果没有,那就再产生一次秘钥就行了:https://blog.csdn.net/qq_37218688/article/details/108399253
ssh-keygen -t rsa -C "邮箱名称"
(首先 ssh-keygen 会确认 密钥的存储位置(默认是 .ssh/id_rsa),
然后它会要求你输入两次密钥口令。 如果你不想在使用密钥时输入口令,将其留空即可。
然而,如果你使用了密码,那么请确保添加了 -o 选项,它会以比默认格式更能抗暴力破解的格式保存私钥。
你也可以用 ssh-agent 工具来避免每次都要输入密码)。
然后,打开gitlab–> 右上角头像–>preference–>SSH keys–>add, 把自己的秘钥输入进去就可以了:
这样就可以通过SSH与远程仓库连接了。
然后在本地创建git仓库:
git init
建立与远程仓库的联系,先从gitlab中获取远程仓库地址,进入gitlab–>左上角project->your projects–>进入对应的仓库,然后如果想进入仓库的某个分支,就点击上面的branches,然后点击进入对应的分支–>然后点击clone–>Clone with SSH,这个地址就是SSH地址
然后建立连接:
git remote add [sb] [上面复制的远程仓库地址]
这样就可以使用pull和push命令来上传和拉取对应的代码了, 而且应为创建了一个名称[sb] 就可以使用这个名称代替远程仓库连接,从而节省很多的输入麻烦。
附上git相应操作的blog地址,自己就不在赘述了:
git clone
git pull
git push
git reset
大文件上传,其实这个过程和使用git管理其他文件的模式很像,只是命令有不同,这里记录一下:
首先要安装git lfs
以下是Ubuntu安装的指令
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
sudo apt-get install git-lfs
git lfs install
然后就是对大文件进行管理
git lfs env
确认相关信息, 如版本、环境等
基本使用:
LFS基本使用
确保本机已经安装和配置过 LFS,运行“git lfs env”确认版本和远程服务器地址
通过”git lfs track
” 追踪大文件,会生成一个.hitattributes文件,不推荐手动修改 .gitattribute ,容易出错;
假设仓库中新增了两个大文件 video.mp4 和 common.rar;
使用track将含有.rar 和 .mp4追踪一下:
$ git lfs track "*.rar"
$ git lfs track "*.mp4"
使用引号,可以确保将来添加的 .h264 和 .a 也会用 LFS 管理;
确保 .gitattributes 被git追踪使用以下命令:
$ git add .gitattributes
$ git add video.mp4 common.rar
$ git commit -m "add static library and video"
完成以上操作后,可以运行 “git lfs ls-files
” 查看已经追踪的大文件
$ git lfs ls-files
也可以运行 “git lfs track
” 查看当前使用 Git LFS 管理的匹配列表
$ git lfs track
Listing tracked paths
*.rar (.gitattributes)
*.mp4 (.gitattributes)
取消使用Git LFS来管理相应的大文件,如:
$ git lfs untrack "*.rar"
Untracking *.rar
如果需要,可以手动获取 Git LFS 对象
$ git lfs pull
$ git lfs fetch
$ git lfs checkout