程序员成长之路——某银行项目学习笔记
前言
本文仅用来记录本次入职以来所用到的技术,作为个人学习笔记,其中整合了许多前辈的大作,如有侵权,请及时联系博主删除,希望自己在工作数年以后,回头再看此文章,能够清晰的梳理出在此工作期间的成长,同时,也供相同学习需要的朋友参考,希望能够在自己的学习之余,对这个行业的新鲜血液,做出一点贡献,最清晰的脚印总是印在最泥泞的路上,自勉,共勉!【持续更新中……】
目录
一.gitlab 配置ssh key,通用ssh拉取代码(2021.04.01)
一.gitlab 配置ssh key,通用ssh拉取代码(2021.04.01)
1.首先需要检查你电脑是否已经有 SSH key,在git bash中输入以下命令:
cd ~/.ssh
ls
上面的命令是查询 是否已经生成过 SSH key,如果已经生成了SSH key,则可以跳过生成SSH key这一步。
2.生成 SSH key
ssh-****** -t rsa -b 4096 -C "[email protected]"
参数含义:
-t 指定**类型,默认使用rsa,可以不写
-C 表示comment,设置注释文字
-b 指定**长度。对于RSA**,最小要求768位,默认是2048位。DSA**必须恰好是1024位(FIPS 186-2 标准的要求)。
-f 指定**文件存储文件名。
以上代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key 代码,如:
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/LQB/.ssh/id_rsa):
如果不输入文件名,直接按回车,则使用默认文件路径存放ssh key,之后就会生成 id_rsa 和 id_rsa.pub 两个秘钥文件。
接着又会提示你输入两次密码(该密码是你访问gitlab的时候要输入的密码,不是gitlab的密码),当然,你也可以不输入密码,直接按回车。那么在访问gitlab的时候就不需要输入密码,如:
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
接下来,会显示以下信息:
Your identification has been saved in /c/Users/LQB/.ssh/id_rsa.
Your public key has been saved in /c/Users/LQB/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:ARNOszbPhz4iHoiVhvfFEh2P7R/zsNtkYsQPkHSW5qk [email protected]
3.在gitlab上添加SSH key:
复制 id_rsa.pub 文件的内容,可以直接找到文件,使用编辑器复制,也可以在git bash中输入以下命令复制:
clip < ~/.ssh/id_rsa.pub
在gitlab 添加SSH,登录到你的gitlab,点击右上角头像的下拉菜单的 Setting -> SSH Keys,将刚刚复制的id_rsa.pub粘贴到下图位置,其中Key是填写 id_rsa.pub,Title是填写生成ssh key时填写的备注信息。
4.验证SSH key:
在git bash 中输入以下命令,其中gitlab.com需要填写你使用的gitlab的地址
ssh -T [email protected]
当输入了以上命令后,会有以下提示,直接输入yes即可
Are you sure you want to continue connecting (yes/no)?
如果你创建 SSH key 的时候设置了密码,接下来就会提示你输入密码,如:
Enter passphrase for key '/c/Users/Administrator/.ssh/id_rsa':
当看到以下提示,则表示配置SSH **成功
Welcome to GitLab, @zhangsan!
5.拉取代码:
通过复制git项目中的ssh地址,然后使用命令拉取代码:
git clone git项目中的ssh地址
二.git最常用命令详解(2021.04.01)
我们在使用git进行开发的时候经常会遇到需要切换远程分支并且提交到远程指定分支的情况,现在记录下操作步骤。
1.查看远程所有分支
git branch -a
git branch不带参数,列出本地已经存在的分支,并且在当前分支的前面用*标记,加上-a参数可以查看所有分支列表,包括本地和远程,远程分支一般会用红色字体标记出来。
* dev
master
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/release/caigou_v1.0
2.新建分支并切换到指定分支
git checkout -b dev origin/release/caigou_v1.0
git checkout -b 本地分支名 origin/远程分支名
该命令可以将远程git仓库里的指定分支拉取到本地,这样就在本地新建了一个dev分支,并和指定的远程分支release/caigou_v1.0关联了起来。
Switched to a new branch 'dev'
Branch 'dev' set up to track remote branch 'release/caigou_v1.0' from 'origin'.
3.查看本地分支及追踪的分支
git branch -vv
git branch -vv命令可以显示本地所有分支,执行结果如下:
* dev e67e3ef [origin/release/caigou_v1.0] 供应商详情页面
master 11160c2 [origin/master: behind 5] Merge branch 'master' of https://git.jointforce.com/scm/join/yj-stat
*表示当前所在分支,[远程分支]表示当前本地分支追踪的远程分支,最后一个是最近一次提交的注释。
4.将本地分支推送到远程
git push -u origin dev:release/caigou_v1.0
git push <远程主机名> <本地分支名>:<远程分支名>,成功后显示如下:
Counting objects: 8, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (8/8), done.
Writing objects: 100% (8/8), 754 bytes | 754.00 KiB/s, done.
Total 8 (delta 6), reused 0 (delta 0)
remote:
remote: Create pull request for release/caigou_v1.0:
remote: https://git.jointforce.com/projects/JOIN/repos/yj-stat/compare/commits?sourceBranch=refs/heads/release/caigou_v1.0
remote:
To https://git.jointforce.com/scm/join/yj-stat.git
a22ed65..e8782b2 dev -> release/caigou_v1.0
Branch 'dev' set up to track remote branch 'release/caigou_v1.0' from 'origin'.
上述命令表示将本地dev分支推送到远程release/caigou_v1.0分支。
上一篇: Java 日期增加一天、一周、一月、三月和六月以及判断是否周末
下一篇: 1024程序员节
推荐阅读