git 初始配置

2/29/2024 10:53:37 AM
357
0

初次安装git配置用户名和邮箱

你需要运行命令来配置你的用户名和邮箱:

$ git config --global user.name "superGG1990"
$ git config --global user.email "superGG1990@163.com"

注意:(引号内请输入你自己设置的名字,和你自己的邮箱)

1、此用户名和邮箱是git提交代码时用来显示你身份和联系方式的,并不是github用户名和邮箱
2、global 参数使设置时全局的,如果只是当前仓库的去掉 --global

git使用ssh密钥

git支持https和git两种传输协议,github分享链接时会有两种协议可选;
git使用https协议,每次pull, push都会提示要输入密码,使用git协议,然后使用ssh密钥,这样免去每次都输密码的麻烦

初次使用git的用户要使用git协议大概需要三个步骤:

一、生成密钥对
二、设置远程仓库(本文以github为例)上的公钥
三、把git的 remote url 修改为git协议(以上两个步骤初次设置过以后,以后使用都不需要再次设置,此步骤视以后项目的remote url而定,如果以后其他项目的协议为https则需要此步骤)

 一、生成密钥对


大多数 Git 服务器都会选择使用 SSH 公钥来进行授权。系统中的每个用户都必须提供一个公钥用于授权,没有的话就要生成一个。生成公钥的过程在所有操作系统上都差不多。首先你要确认一下本机是否已经有一个公钥。

SSH 公钥默认储存在账户的主目录下的 ~/.ssh 目录。进去看看:

$ cd ~/.ssh
$ ls
authorized_keys2  id_dsa       known_hosts config            id_dsa.pub

看一下有没有id_rsa和id_rsa.pub(或者是id_dsa和id_dsa.pub之类成对的文件),有 .pub 后缀的文件就是公钥,另一个文件则是密钥。

假如没有这些文件,甚至连 .ssh 目录都没有,可以用 ssh-keygen 来创建。该程序在 Linux/Mac 系统上由 SSH 包提供,而在 Windows 上则包含在 MSysGit 包里:

$ ssh-keygen -t rsa -C "your_email@youremail.com"

Creates a new ssh key using the provided email # Generating public/private rsa key pair.

Enter file in which to save the key (/home/you/.ssh/id_rsa):

直接按Enter就行。然后,会提示你输入密码,如下(建议输一个,安全一点,当然不输也行,应该不会有人闲的无聊冒充你去修改你的代码):

Enter same passphrase again: [Type passphrase again]

完了之后,大概是这样:

Your public key has been saved in /home/you/.ssh/id_rsa.pub.
The key fingerprint is: # 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@youremail.com

到此为止,你本地的密钥对就生成了。

二、添加公钥到你的远程仓库(github)


 1、查看你生成的公钥:

$ cat ~/.ssh/id_rsa.pub

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0X6L1zLL4VHuvGb8aJH3ippTozmReSUzgntvk434aJ/v7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8vR3c8E7CjZN733f5AL8uEYJA+YZevY5UCvEg+umT7PHghKYaJwaCxV7sjYP7Z6V79OMCEAGDNXC26IBMdMgOluQjp6o6j2KAdtRBdCDS/QIU5THQDxJ9lBXjk1fiq9tITo/aXBvjZeD+gH/Apkh/0GbO8VQLiYYmNfqqAHHeXdltORn8N7C9lOa/UW3KM7QdXo6J0GFlBVQeTE/IGqhMS5PMln3 admin@admin-PC

2、登陆你的github帐户。点击你的头像,然后 Settings -> 左栏点击 SSH and GPG keys -> 点击 New SSH key

3、然后你复制上面的公钥内容,粘贴进“Key”文本域内。 title域,自己随便起个名字。

4、点击 Add key。

完成以后,验证下这个key是不是正常工作:

$ ssh -T git@github.com

Attempts to ssh to github

如果,看到:

Hi xxx! You've successfully authenticated, but GitHub does not # provide shell access.

恭喜你,你的设置已经成功了。

 三、切换远程仓库地址

git远程仓库切换了地址 ,需要切换远程仓库地址,有三种方法

1、直接修改

git remote 查看所有远程仓库
git remote xxx 查看指定远程仓库地址
git remote set-url origin 你新的远程仓库地址

2、删除后修改

git remote rm origin
git remote add origin 你的新远程仓库地址

3、直接修改你本地项目下的.git文件

四、权限受限,重置key

进入   C:\Users\【计算机用户】\.ssh (windows用户)

bash 命令行输入

ssh-keygen -t rsa -C "your_email@youremail.com" 

重新生成key,

然后去线上进行ssh key配置,注意 上边代码中 email地址,必须和你线上的账户一致
如果一个机器中需要配置多个远程仓库,在config中增加一个下文文中的代码配置即可

# 配置*********
Host 192.168.0.23 
HostName 192.168.0.23
IdentityFile C:\\Users\\NIU****\\.ssh\\id_rsa
PreferredAuthentications publickey
User 牛**

 五、日常使用

默认为master分支
创建一个新的分支(本地),并切换到新分支中 git checkout -b branchname
更新分支线上内容到本地 git pull origin master
提交内容到本地分 支

git  add  .   //打包所有更改
git commit -a -m 'added a new footer '   //提交到本地分支

 

查看本地分支 git branch 查看线上分支 git branch -a
删除本地分支 git branch -d branchname 强制删除 git branch -D branchname
提交本地分支到远程 git push origin branchname (远程分支不存在时候将自动创建)

撤销修改

撤销修改是指将工作区中的修改撤销。

语法:git checkout 文件名或路径

# 撤销工作区中当前目录中的所有更改
git checkout .
 
# 撤销工作区中指定文件的修改
git checkout -- filename

 

六、新项目首次上传到远程仓库

git init //把这个目录变成Git可以管理的仓库
git add README.md //文件添加到仓库
git add . //不但可以跟单一文件,还可以跟通配符,更可以跟目录。一个点就把当前目录下所有未追踪的文件全部add了 
git commit -m "first commit" //把文件提交到仓库
git remote add origin git@github.com:wangjiax9/practice.git //关联远程仓库
git push -u origin master //把本地库的所有内容推送到远程库上

更多可参考:  代码首次上传到git仓库

全部评论



提问