Mac M1 Git安装及常规使用

目录

Git安装

通过Homebrew进行安装

验证是否成功

Git LFS安装

通过Homebrew安装

初始化Git LFS

常用命令

git

-v:查看版本信息

-h:查看帮助

-C

--git-dir=

-c =

init

add

添加单个文件

添加多个文件

添加所有更改的文件

添加所有更改的文件(包括子目录)

添加特定类型的文件

commit

fetch

获取所有远程分支的最新数据

特定远程仓库获取数据

获取特定远程分支的数据

更新所有远程跟踪分支

clone

pull

默认远程仓库和分支拉取

特定远程仓库和分支拉取

指定合并策略

递归合并策略

默认合并策略

push

推送当前分支到默认远程仓库

推送特定分支到特定远程仓库

强制推送

推送所有分支

log

branch

查看所有本地分支

查看所有远程分支

查看所有分支(包括远程分支)

创建分支 

删除本地分支

强制删除本地分支

删除远程分支

重命名分支

checkout

不同分支之间切换

创建并切换到新分支

status

config

配置用户名和邮箱

查看配置信息

清除配置的用户名和密码

生成SSH公钥-ssh-keygen

查看Git配置中使用的SSH密钥关联的邮箱

 参考资料


Git安装

通过Homebrew进行安装

执行如下命令:

# 搜索git
brew search git

# 安装git
brew install git

# 更新git
brew upgrade git

# 卸载git
brew uninstall git

验证是否成功

执行如下命令:

git --version

结果如下即可:

Git LFS安装

        Git  LFS (Large File Storage)是一个用于管理大型文件的 Git 扩展。

通过Homebrew安装

        通过执行如下命令进行安装:

brew install git-lfs

初始化Git LFS

        安装完成后,需要在需要使用的Git仓库中初始化Git LFS,然后才能使用LFS。

        初始命令执行如下:

git lfs install

常用命令

git

-v:查看版本信息

git -v  
或
git --version

-h:查看帮助

git -h 
或
git --help

-C <path>

        在指定路径下执行 Git 命令,而无需先切换到该目录。<path> 是你想要执行 Git 命令的仓库路径。将 -C <path> 与任何其他 Git 命令一起使用,例如 clonecommitpush 等

        例如:在 /home/user/myrepo 目录下查看 Git 状态

git -C /home/user/myrepo status

        这个命令会在 /home/user/myrepo 目录下执行 git status 命令,而不需要先使用 cd /home/user/myrepo 切换到该目录。

--git-dir=<path>

        命令用于指定 Git 仓库的 .git 目录的路径。

        应用场景:指定 .git 目录进行仓库操作

        例如:在/home/user/myrepo/repo.git目录下执行status命令,并显示该仓库的状态。

git --git-dir=/home/user/myrepo/repo.git status

        这个应用场景和-C <path> 有点类似。    

-c <name>=<value>

        在执行单个 Git 命令时临时覆盖 Git 配置中的某个选项,<name> 是临时配置的 Git 选项名称,<value> 是临时设置的值,不会影响该仓库的其他 Git 配置或全局配置。

        例如,如果你想在执行 git commit 命令时临时设置用户名为 "临时用户",你可以使用以下命令:

git -c user.name="临时用户" commit -m "提交信息"

        这个命令会在执行 git commit 时使用 "临时用户" 作为用户名,但不会改变你的全局 Git 配置。

init

        命令用于在当前目录或指定目录中初始化一个新的 Git 仓库,并在目录下创建一个 .git 子目录,其中包含所有必要的 Git 数据结构。

        如果你当前在你希望创建 Git 仓库的目录中。运行代码如下:

git init

        在某个特定的目录中初始化 Git 仓库,可以使用 -C 选项来切换到该目录,然后初始化仓库。运行代码如下:

git init -C 目录路径

        在指定目录初始化裸仓库(不包含工作目录的仓库),可以使用 --bare 选项。裸仓库通常用于服务器上,以便其他开发者可以从中克隆或推送代码。运行代码如下:

git init --bare 目录路径

add

        将文件的更改添加到暂存区(staging area)。

添加单个文件

git add <文件名>

添加多个文件

git add <文件名1> <文件名2>...

添加所有更改的文件

        添加所有更改的文件,可以使用 . 表示当前目录及其子目录中的所有文件,命令如下:

git add .

        使用 * 表示当前目录中的所有文件(不包括子目录),命令如下:

git add *

添加所有更改的文件(包括子目录)

git add -A
或
git add --all

添加特定类型的文件

        例如添加txt类型的文件,命令如下:

git add *.txt

        其余类型文件修改txt为对应文件类型的后缀名即可。

commit

        将暂存区内容提交到本地仓库,运行如下代码:

git commit -m "备注说明"

fetch

        从远程仓库下载(或获取)最新的数据,但不会自动合并或修改工作目录中的内容。

获取所有远程分支的最新数据

git fetch

        所有配置的远程仓库中获取最新的数据,并更新本地对远程分支的引用。

特定远程仓库获取数据

git fetch <远程仓库名>

例如,从名为 origin 的远程仓库获取数据:

git fetch origin

获取特定远程分支的数据

git fetch <远程仓库名> <远程分支名>

更新所有远程跟踪分支

git fetch --all

clone

        从远程仓库(如GitHub或GitLab)下载一个现有的仓库副本到本地计算机。‌

        运行如下代码:

git clone 仓库地址

pull

        从远程仓库获取最新的数据并自动将其合并当前分支。它实际上是 git fetch 和 git merge 的组合。

默认远程仓库和分支拉取

git pull

        默认情况下,git pull 会从名为 origin 的远程仓库和当前分支的远程跟踪分支拉取数据并合并。

特定远程仓库和分支拉取

git pull <远程仓库名> <远程分支名>

指定合并策略

递归合并策略
git pull --rebase

        将远程分支的更改应用到本地分支,而不是创建一个新的合并提交。

默认合并策略
git pull --no-rebase

        强制使用默认的合并策略(即创建一个新的合并提交)。

push

        将本地提交推送到远程仓库。

推送当前分支到默认远程仓库

git push

        默认情况下,git push 会将当前分支推送到名为 origin 的远程仓库,并推送到与当前分支同名的远程分支。

推送特定分支到特定远程仓库

git push <远程仓库名> <本地分支名>

强制推送

警告:强制推送可能会覆盖远程仓库的历史记录,导致其他开发者的工作丢失。仅在必要时使用。

git push --force <远程仓库名> <本地分支名>

推送所有分支

git push --all <远程仓库名>

log

        命令可以查看提交历史,了解每次提交的详细信息。

        运行如下代码:

git log [分支名称]

        命令不指定分支名称,则默认查看当前分支提交信息。

branch

        命令用于管理和查看分支。

查看所有本地分支

        运行如下代码:

git branch

        列出所有本地分支,并在当前分支前面加上一个星号 *

查看所有远程分支

        运行如下代码:

git branch -r

查看所有分支(包括远程分支)

        运行如下代码:

git  branch  -a

创建分支 

        运行如下代码:

git  branch  <新分支名称>

删除本地分支

        运行如下代码:

git branch -d <分支名称>

强制删除本地分支

        强制删除一个分支(即使该分支有未合并的更改),可以使用 -D 选项,运行如下代码:

git branch -D <分支名称>

删除远程分支

        删除远程分支,运行如下代码:

git push origin --delete <分支名>

重命名分支

        重命名当前分支,可以使用 git branch -m 命令,运行如下代码:

git branch -m <新分支名称>

        重命名其他分支 ,运行如下代码:

git branch -m <旧分支名称> <新分支名称>

checkout

不同分支之间切换

        使用git checkout 或 git switch适用于 Git 2.23 及以上版本)命令切换分支

        运行如下代码:

git checkout <分支名>
git switch <分支名>

创建并切换到新分支

        使用 git checkout -b 或git switch -c 命令进行创建并切换分支

        运行代码如下:

git checkout -b <新分支名>
git switch -c <新分支名>

status

        显示当前仓库的状态,包括哪些文件被修改哪些文件被暂存等。

        运行如下命令:

git status

config

配置相关信息

配置用户名和邮箱

git config --global user.name "username"

git config --global user.email "[email protected]"

查看配置信息

git config --list

清除配置的用户名和密码

下次提交代码时会让重新输入账号密码:

git config --system --unset credential.helper

生成SSH公钥-ssh-keygen

执行如下命令,然后一直回车直到结束为止

ssh-keygen -t rsa -C “[email protected]

执行完后,会在 ~/.ssh目录下生成密钥和私钥,结果如下:

进入到在Mac中~/.ssh目录下,使用快捷键 “command + shift + .",将隐藏文件显示出来,即可查看里面的内容。

查看Git配置中使用的SSH密钥关联的邮箱

git config --global --get user.email

执行结果如下:

 参考资料

更多内容请查阅官网:

Git中文网 官网