文章目录
- 安装
- 本地操作工作流程
- Git 初始化以及仓库的创建、操作
- 基本信息
- 初始化一个Git 仓库
- Git 管理远程仓库
- Git 克隆
- 给远程仓库设置别名
- pull 拉取并合并分支
- Push推送到远程
- 实战
- git 是免费的管理github 的一个软件
安装
- Git 官网下载:https://git-scm.com/download/win
选择对应的版本即可
本地操作工作流程
基本流程(本地操作,并没有同步到远程仓库)
- git status : 获取文件的状态
- git add : 将文件从工作区域提交到暂存区
- git commit -m " 提交描述 " = :将文件从暂存区提交到Git 仓库
Git 初始化以及仓库的创建、操作
基本信息
配置全局的 Git 用户名和邮箱地址。这些信息将会用于每一次 Git 提交,以标识是哪个用户进行了提交。在这里,你需要将 '实际用户名'
替换为你在 Git 中希望使用的用户名,'邮箱'
替换为你的电子邮件地址。
git config --global user.name '实际用户名'
git config --global user.email '邮箱'
这样的全局配置对于你在所有的 Git 仓库中都使用相同的身份信息非常方便。如果你在特定的仓库中想要使用不同的身份信息,你可以在那个仓库中执行相同的命令,但不使用 --global
选项。在这种情况下,配置将只对当前仓库有效。
例如,如果你在某个特定的仓库中需要使用不同的用户名和邮箱,你可以在该仓库中执行:
git config user.name '新的用户名'
git config user.email '新的邮箱'
这将会覆盖全局的配置,只在这个仓库中生效。
- 可以使用命令来查看是否配置好信息
git config --list
初始化一个Git 仓库
你的步骤已经基本正确了。这是一种典型的 Git 工作流程,让我更详细地为你解释一下:
-
在文件夹内执行
git init
:git init
这将在当前文件夹下创建一个新的 Git 仓库,生成一个
.git
文件夹,用于跟踪版本历史和管理配置。 -
使用
git status
查看文件状态:git status
这会列出工作目录中所有文件的状态,包括未跟踪的、已修改的和已暂存的文件。
-
使用
git add 文件名
将文件添加到暂存区:git add 文件名
这将指定的文件或目录添加到 Git 的暂存区,准备提交到版本历史。
-
再次使用
git status
查看文件状态:git status
确认文件已经被成功添加到暂存区。
-
使用
git commit
提交文件:git commit -m '提交描述'
这将提交暂存区中的所有更改到版本历史,并且需要提供一个简短的提交描述,以说明这次提交的目的。
以上步骤完成后,你的更改就已经被提交到本地仓库中了。如果你想将这些更改推送到远程仓库,可以使用 git push
命令。
请注意,这是一个基本的工作流程,实际使用中可能会有一些变化,特别是在涉及到分支、合并、远程仓库等方面。
Git 管理远程仓库
目的:同步备份共享
将本地仓库的文件上传到远程仓库
Git 克隆
git clone
命令用于从远程仓库克隆(复制)一个项目到本地。语法如下:
git clone 仓库地址
在这里,你需要将 仓库地址
替换为你要克隆的实际仓库地址。
例如,如果你要克隆一个 GitHub 上的仓库,你可以执行类似如下的命令:
git clone https://github.com/用户名/仓库名.git
或者使用 SSH 地址(前提是你已经设置好了 SSH 密钥):
git clone git@github.com:用户名/仓库名.git
上述命令会将远程仓库克隆到当前工作目录下的一个新文件夹,文件夹的名称即为仓库名。如果你想为克隆的仓库指定一个不同的本地目录名,可以在命令中添加目标目录:
git clone 仓库地址 目标目录
例如:
git clone https://github.com/用户名/仓库名.git my-folder
这将在当前工作目录下创建一个名为 my-folder
的文件夹,并将仓库克隆到这个文件夹中。
clone 下来之后,就可以在本地进行操作,操作完成之后就上传到远程仓库
给远程仓库设置别名
- git remote add 别名 实际仓库的url
例如:git remote add origin https://github.com/suooous/Deeplearning.git
那么以后使用url 的地方就可以用 origin 来代替
pull 拉取并合并分支
命令 git pull --rebase main
的意思是从远程仓库中拉取 main
分支的变更,并使用 rebase 方式合并到你当前所在的分支。这通常用于保持一个线性的提交历史。
。在执行 pull 操作时,你需要指定远程仓库的别名。假设你的远程仓库别名是 origin
,你可以执行以下命令:
git pull --rebase origin main
这将从远程仓库 origin
的 main
分支拉取最新变更,并将这些变更通过 rebase 方式应用到你当前所在的分支。
请确保在执行 rebase 操作前,你的本地分支是干净的(没有未提交的修改)。如果有未提交的修改,Git 会提示你在 rebase 之前先进行提交或者撤销这些修改。
Push推送到远程
- git push -u origin master
这个命令将本地的master
分支推送到远程仓库,并将远程仓库的main
分支作为本地master
分支的上游分支。这是一种常见的操作,特别是在首次推送分支时。
解释一下命令的各个部分:
git push
: 将本地变更推送到远程仓库。-u origin master
:-u
选项用于设置上游分支。origin
是远程仓库的别名,master
是本地分支的名称。
所以,这个命令的作用是将本地的 master
分支推送到名为 origin
的远程仓库,并将远程仓库的 main
分支设置为本地 master
分支的上游分支。这样,在以后的推送或拉取操作中,你就可以使用 git push
或 git pull
,而不需要再次指定远程和分支。
确保你的本地分支 main
是准备好被推送的,即没有未提交的修改。如果有未提交的修改,Git 会要求你先进行提交或者处理这些修改。
实战
背景:远程仓库的分支为main ,本地仓库的分支为master
目的:将本地分支的内容合并到远程的main 分支,并不覆盖原来的内容
前提准备:将账号信息等配置好,已经将文件传送到本地的仓库
- 将目的仓库设置别名
- 拉取远程仓库的main 分支,同步到现在的master 分支
- 将master 分支传送到远程的main 分支