一: 生成git ssh需要的签名
要在 macOS 上生成 Git SSH 的签名文件操作:
-
打开终端应用程序
-
在终端中输入以下命令,创建一个新的 SSH 密钥:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
将
your_email@example.com
替换为您的电子邮件地址。 -
您将被提示选择保存密钥的文件位置和设置密码。按 Enter 键接受默认值即可。
-
SSH 密钥对将被生成并保存在您选择的文件位置中。默认情况下,私钥文件名为
id_rsa
,公钥文件名为id_rsa.pub
。 -
使用以下命令将公钥复制到剪贴板:
pbcopy < ~/.ssh/id_rsa.pub
-
粘贴公钥到您的 Git 托管服务(例如 GitHub、GitLab 等)的 SSH 密钥设置中。
现在已经成功生成了 Git SSH 的签名文件,并将公钥添加到您的 Git 托管服务中。这将使您能够使用 SSH 协议进行与 Git 仓库的交互,例如克隆仓库、推送和拉取更改等操作。
二:git基本使用
- git 命令行下载项目到本地
# 导航到你想要将项目克隆到的目录。你可以使用cd命令来切换目录。例如,如果你想将项目克隆到桌面上的一个新文件夹,可以执行以下命令:
cd ~/Desktop
# 使用`git clone`命令来克隆项目。将命令中的`<repository>`替换为远程仓库的URL。例如:
git clone <repository>
- 切换分支代码
# 这将创建一个本地分支,与远程分支对应,并将你的工作区切换到该分支。
# 将`<remote_branch_name>`替换为你要切换的远程分支的名称。
git checkout <remote_branch_name>
远程分支的代码在切换到该分支后会自动下载到你的本地仓库。如果你之前已经下载过该分支的代码,git fetch
命令将会更新该分支的最新代码。
- 查看git当前项目的配置信息:
# 显示当前项目的所有配置信息,包括用户名、邮箱、远程仓库地址等。
git config --list
# 只想查看特定的配置项,可以使用`--get`参数(可以根据需要替换`user.name`为其他配置项的名称来查看相应的值)
git config --get user.name
# 只查看全局的Git配置信息(适用于所有项目)
git config --global --list
- 查看本地git仓库对应远程仓库地址
# 执行该命令后,Git会显示本地仓库配置的所有远程仓库及其对应的URL。输出结果中会包含远程仓库的名称(通常为"origin")以及其URL。
git remote -v
- 更新本地仓库的远程跟踪分支信息(不会自动切换到该分支)
# 这里假设远程仓库的名称为"origin",你也可以替换为你实际使用的远程仓库名称。
git fetch origin
-
推送更改:
git add . git commit -m "Commit message" git push
使用上述命令可以将本地更改推送到远程仓库。
git add .
将所有更改添加到暂存区,git commit -m "Commit message"
将更改提交并添加提交消息,git push
将更改推送到远程仓库。
!!!当本地分支与远程分支对应时,在执行 git pull 和 git push 命令时通常不需要显式指定分支名称。Git 会自动将更改拉取到当前分支并将更改推送到与当前分支对应的远程分支。 -
拉取更改:
git pull
使用此命令可以从远程仓库拉取最新的更改并合并到本地仓库。它将自动执行
git fetch
和git merge
操作。
!!!当本地分支与远程分支对应时,在执行 git pull 和 git push 命令时通常不需要显式指定分支名称。Git 会自动将更改拉取到当前分支并将更改推送到与当前分支对应的远程分支。
x. 本地分支与远程分支建立对应关系
# 建立本地分支与远程分支的对应关系:(将 <remote_branch_name> 替换为要与本地分支对应的远程分支的名称。)
git branch --set-upstream-to=origin/<remote_branch_name>
# 例如,如果要将当前的本地分支 feature 与远程的 origin/feature 分支建立对应关系,可以运行:
# git branch --set-upstream-to=origin/feature
# 指定本地某个分支与远端某个分支建立联系时,需要同时指定远端分支名与本地分支名
# 例如,远端分支名:origin/feature 本地分支名 local-feature 建立联系
# git branch --set-upstream-to=origin/feature local-feature
这样,本地分支与远程分支之间的对应关系就建立起来了。
现在,当您在该本地分支上执行 git pull 和 git push 命令时,Git 将自动与对应的远程分支进行交互,无需显式指定分支名称。
x. 查看本地分支与远程分支的对应关系
# 这将列出所有本地分支,并在每个分支旁边显示与之对应的远程分支的名称。
git branch -vv
示例输出:
* (HEAD detached at origin/w-dev) 69364a7
main 70f016a [origin/main]
w-dev 69364a7 [origin/w-dev]
# * 符号表示当前所在的分支。在这个示例中,它表示当前处于一个分离的 HEAD 状态,即没有与之关联的本地分支。
# 切换到指定分支
git checkout w-dev
# 再次检验对应关系
git branch -vv
# 输出:
main 70f016a [origin/main]
* w-dev 69364a7 [origin/w-dev]
-
创建分支:
git branch <branch_name>
使用此命令可以创建一个新的分支。将
<branch_name>
替换为要创建的分支的名称。 -
合并分支:
git merge <branch_name>
使用此命令可以将指定分支的更改合并到当前分支。将
<branch_name>
替换为要合并的分支的名称。 -
更改Git配置信息当前仓库的用户名
# 此项目
git config user.name "Your Name"
# 全局更改,则需要`--global `
# git config --global user.name "Your Name"
x. 查看git 此项目配置信息
# Git的所有配置信息
# git config --list
# 只查看当前仓库配置信息
git config --local --list
# 只查看全局的配置信息
# git config --global --list
网友评论