美文网首页
iOS开发-使用GitLab 私库 Git-Tower图形工具

iOS开发-使用GitLab 私库 Git-Tower图形工具

作者: 善良的皮蛋 | 来源:发表于2020-07-21 14:56 被阅读0次

使用GitLab 存储代码在公司自己搭建的服务器上面

准备:

  • 生成SSH key
  • 注册GitLab账号
  • 配置Mac Host
  • GitLab 提交代码
  • 使用Git-Tower

1.生成ssh key

在终端输入

ls -al ~/.ssh

检查本地是否有ssh key,会出现两种情况。
第一种情况终端出现id_rsa_pubis_rsa文件,表示SSH key已经存在。
第二种情况终端没有出现上述文件,表示该电脑没有配置SSH Key,在终端种输入以下命令:

ssh-keygen -t rsa -C "你的注册GitLab邮箱"

当终端出现以下提示:

Generating public/private rsa key pair.
Enter file in which to save the key (/your_home_path/.ssh/id_rsa):

可能会让你输入你的开机密码。
再次输入

ls -al ~/.ssh

看到 id_rsa_pubid_rsa即表示获取完成。复制pub 粘贴到GitLab 的SSH中去。

pbcopy < ~/.ssh/id_rsa.pub
image.png

Title随便填写,直接在Key中粘贴刚才复制id_rsa_pub完成key的配置

2.注册GitLab 账号

一般都是公司内容已经帮你注册好,分配给你,或者你提供邮箱就可以添加进去。

配置 Mac Host

前往 -> 前往文件夹 ->(输入要前往的文件夹)

/private/etc/
image.png

在文件夹中找到Host,复制一份到桌面、配置host。

image.png

左边为(10.2.5.488)服务器域名,右边为你要替代的域名(a1244.comes.cn)

把修改好的host 文件再拖入刚才的文件夹中,替换原来未配置的文件即可。

3.GitLab 提交代码

首先测试是否连接服务器成功

ssh -T git@10.1.5.100 //公司服务器

或者

ssh -T git@gitlab.com //使用gitlab服务器
image.png

连接成功了。

注意事项:记得要管理员开权限不然会提示( Permission denied )没有权限访问

先clone 一份仓库代码

cd 当前你创建的放置clone 代码的文件夹
git clone 仓库地址
image.png

表示clone 成功了
下面试试提交更改的代码

cd /Users/hwxc_ios/hwxc_app/iOS 

cd 到最底层的文件夹(clone下来的当前文件夹)不然无法使用git命令


image.png
git add .
git commit -m "提交说明"
git push -u origin master

4.Git-Tower 使用

由于是公司自己搭建的GitLab 仓库,


image.png

Host 记得添加http://

如果是个人的本地项目则只需要通过下面方式就可以获取Personal Access Token

image.png
image.png
image.png

在gitLab中复制git@gitlab.com:xxxx.git地址即可


更新:2021-04-26 22:04:38
image.png

出现以下问题:通过网上查找资料可能是我的id_rsaid_rsa.pub过期了。所以我需要删除掉旧的,重新创建

github Permission denied (publickey)

通常在Mac中SSH秘钥存储在

cd ~/.ssh 
rm keyname_rsa 

gitLab中创建一个新项目,Project Name 为在gitLab中的名称,project sulg 为clone到本地的名称,如果需要删除本地的文件夹进行以下操作

cd 当前文件夹
sudo rm -r -f 你要删除的文件夹名称
git config --global user.name "xxxxxx"
git config --global user.email "xxxxxxx@qq.com"

Create a new repository

git clone git@gitlab.com:xxxxclone复制即可/003.git
cd 003
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master

Push an existing folder

//用这个方法提交就可以,在gitLab中003换成你的工程文件名字即可
cd existing_folder
git init
git remote add origin git@gitlab.com:xxxxclone复制即可/003.git
git add .
git commit -m "Initial commit"
git push -u origin master

Push an existing Git repository

cd existing_repo
git remote rename origin old-origin
git remote add origin git@gitlab.com:xxxxclone复制即可/003.git
git push -u origin --all
git push -u origin --tags

常见的错误是上传一个空文件夹

image.png
我的原因:该文件夹是通过git 拉取到的项目,本身隐藏有.git文件夹,因此始终提交到另一个远程分支上去的是空文件夹。

解决办法:删除之前代码残留的.git ,转换文件夹位置  。push  操作删除 远程分支残留空文件夹。等删除空文件夹之后再重新提交一遍即可

代码示例

1.克隆远程仓库到本地库。
例如使用ssh方法:
git clone git@github.com:xxx/xxx.git
2.对需要删除的文件、文件夹进行如下操作: 
git rm test.txt (删除文件)
git rm -r test (删除文件夹)
//手动删除本地也可以
3.提交修改
git commit -m "Delete some files."

4.将修改提交到远程仓库的xxx分支/或者 主干,主要看文件所在的位置:
git push origin xxx  / git push -u origin master

更新2021-04-27 11:49:47


采用 http方式推送本地代码至远程仓库

cd  工程文件夹
git init
git remote add origin http://xxxx.git
git add .
git commit -m "Initial"
git pull --rebase origin master //关键一步,先合并在提交
git push -u origin master

参考链接

相关文章

网友评论

      本文标题:iOS开发-使用GitLab 私库 Git-Tower图形工具

      本文链接:https://www.haomeiwen.com/subject/vtyikktx.html