git使用大全
现在一个情况是,本机电脑上有个人账户git,现在要拉取公司的代码,存在的一个问题是个人账号还要继续用,不能直接覆盖
这就涉及到账户的切换问题,接下来就看如何拉取公司代码。
1.拉取代码之前,先创建本地仓库
首先在我们在作为仓库的文件夹(或新建一个作为存放公司代码的文件夹)
1 | 1).右键:Git Bash Here |
这样会生成一个.git文件夹
2.更改git commit的时候用到的用户信息
git config –local user.name “xxx” //公司配备的git 用户名
git config –local user.email “xxx” //公司配备的git 邮箱
3.生成SSH key
1 | ssh-keygen -t rsa -C "xxxemail" //公司配备的git 邮箱 |
执行后系统会提示:Enter passphrase(empty for no passphrase)
这是 Git 生成 SSH key 时的提示,需要你设置 SSH key 的 passphrase。Passphrase 可以理解成密码,用于保护你的私钥,增强安全性。如果你设置了 passphrase,每次使用 SSH key 进行 Git clone 和 push 操作时都需要输入 passphrase。
如果你希望不设置 passphrase,只需要直接回车即可,留空即可。
注意:如果你的机器被多个人共用,请务必为 SSH key 设置 passphrase,以保护你的私钥。如果只有你自己使用,也建议设置 passphrase 增强安全性。
这里有一个问题:这里系统会默认将.ssh文件夹,生成到 C:\Users\pc\ 下
这里我已经存在一个账户,这里也有.ssh文件夹,在不确认这个文件夹还有没用的情况下
我不想直接覆盖,所以这里又衍生出一个新的问题(针对多个账户需要公用)
如何在git中如何修改SSH密钥的生成路径?
这里我们需要新建或修改一个“HOME”类型为用户变量的环境变量
将其值改为.ssh存放的文件夹地址:C:\Users\pc\你的文件夹名
完成之后,删除.git文件夹,重新执行 1,2,3 步骤,直到 正确无误的生成:SSH key
4. 通过ssh 方式clone
1 | git clone -b 分支名 项目地址.git |
第一次clone可能会提示:
1 | The authenticity of host '' can't be established. |
这是由于
这个提示表示 SSH 客户端连接的主机没有在本地 SSH known_hosts 文件中找到对应的条目,因此无法验证主机的身份。这通常是由于第一次连接该主机所致。
在这种情况下,你需要考虑是否信任该主机。如果你确定该主机是可信的,可以回答 “yes” 以继续连接。如果你不确定,可以输入 “no” 以中断连接,然后联系主机管理员以确认该主机的身份。
如果你选择继续连接,SSH 客户端将会将该主机的公钥添加到本地 known_hosts 文件中,以便在将来的连接中可以比较主机的公钥,从而验证主机的身份。
另外,如果你想忽略该主机的身份验证,可以回答 “yes” 后在下一次连接时使用 StrictHostKeyChecking 选项。例如:
ssh -o StrictHostKeyChecking=no user@host
但是,忽略该警告将使你的连接受到安全风险的威胁,因此不建议在生产环境中使用该选项。
5. 通过gitlone https 的方式拉取代码,如果一下错误
1 | fatal: unable to access 'https://gitlab.xxx.com/xxx/': SSL certificate problem: self signed certificate |
则通过以下命令来设置不验证 https证书
git config –global http.sslVerify false
6.在git中项目的分支
在Git中,可以使用以下命令来查看当前项目中所有的分支
1 | git branch |
这会列出本地仓库中的所有分支,当前活动分支会被标记以一个星号 (*),如果想查看远程仓库中的所有分支,可以使用以下命令:
1 | git branch -r |
其中 -r 选项表示只列出远程分支。如果想同时查看本地分支和远程分支,可以使用以下命令:
1 | git branch -a |
其中 -a 选项表示列出所有分支,包括本地分支和远程分支
7.在git 中切换分支
在Git中,可以使用以下命令来切换分支:
1 | git checkout <branch-name> |
其中
1 | git checkout feature |
执行此命令后,Git会将工作目录切换到 feature 分支上,并将HEAD指向此分支。
在切换分支之前,确保在当前分支下进行提交或保存更改。如果有未提交的更改,切换分支时Git会提示您保存更改或将更改撤销,并将它们带到新分支
[参考]