git安装教程

下载git

CNPM Binaries Mirror

安装git

使用许可声明

双击下载后的 Git-2.40.0-64-bit.exe,开始安装,这个界面主要展示了 GPL 第 2 版协议1的内容,直接下一步。

选择安装目录

可点击 “Browse…” 更换目录,也可直接在方框里面改,直接将 “C” 改为 “E”,这样就直接安装在 E 盘里了。

选择安装组件

图中这些英文都比较简单,我已经把大概意思翻译出来了,大家根据自己的需要选择勾选。点击 [next] 到第四步。

注:红色方框按需选择,分别为:“创建桌面快捷方式”,“每天检查更新”和“将Git Bash配置文件添加到windows”

选择开始菜单文件夹

方框内 Git 可改为其他名字,也可点击 “Browse...” 选择其他文件夹或者给"Don't create a Start Menu folder" 打勾不要文件夹,点击 [next] 到第五步。

安装成功后在开始菜单里的图如下:

选择 Git 默认编辑器

Git 安装程序里面内置了 10 种编辑器供你挑选,比如 Atom、Notepad、Notepad++、Sublime Text、Visual Studio Code、Vim 等等,默认的是 Vim ,选择 Vim 后可以直接进行到下一步,但是 Vim 是纯命令行,操作有点难度,需要学习。如果选其他编辑器,则还需要去其官网安装后才能进行下一步。下图为默认编辑器 Vim.可直接点击 [next] 到第六步。

决定初始化新项目(仓库)的主干名字

第一种是让 Git 自己选择,名字是 master ,但是未来也有可能会改为其他名字;第二种是我们自行决定,默认是 main,当然,你也可以改为其他的名字。一般默认第一种,点击 [next] 到第七步。

注: 第二个选项下面有个 NEW!,说很多团队已经重命名他们的默认主干名为 main,这是因为2020 年非裔男子乔治·弗洛伊德因白人警察暴力执法惨死而掀起的 Black Lives Matter(黑人的命也是命)运动,很多人认为 master 不尊重黑人,呼吁改为 main.

调整你的 path 环境变量

第一种是仅从 Git Bash 使用 Git。这个的意思就是你只能通过 Git 安装后的 Git Bash 来使用 Git ,其他的什么命令提示符啊等第三方软件都不行。

第二种是从命令行以及第三方软件进行 Git。这个就是在第一种基础上进行第三方支持,你将能够从 Git Bash,命令提示符(cmd) 和 Windows PowerShell 以及可以从 Windows 系统环境变量中寻找 Git 的任何第三方软件中使用 Git。(推荐)

第三种是从命令提示符使用 Git 和可选的 Unix 工具。选择这种将覆盖 Windows 工具,如 “ find 和 sort ”。只有在了解其含义后才使用此选项。一句话,适合比较懂的人折腾。

选择 SSH 执行文件

第一种使用捆绑的 OpenSSH,这使用的 ssh.exe 是 Git 自带的(推荐)

第二种使用外部 OpenSSH,这使用外部 ssh.exe 文件。

选择HTTPS后端传输

第一种使用 OpenSSL库,服务器证书将使用 ca-bundle.crt 文件进行验证。(推荐)

第二种使用本机 Windows 安全通道库服务器证书将使用 Windows 证书存储进行验证。此选项还允许您使用公司内部分发的内部根 CA 证书,例如通过 Active Directory 域服务。

如果在具有企业管理证书的组织中使用 Git,则将需要使用安全通道。如果你仅使用 Git 来访问公共存储库(例如 GitHub ),或者你的组织不管理自己的证书,那么使用 SSL 后端(它们只是同一协议的不同实现)就可以了。

配置行尾符号转换

第一种签出 Windows 样式,提交 Unix 样式的行结尾。(推荐)

第二种按原样签出,提交Unix样式的行结尾。

第三种按原样签出,按原样提交。

配置终端模拟器以与 Git Bash 一起使用

第一种使用 MinTTY(MSYS2的默认终端),Git Bash 将使用 MinTTY 作为终端仿真器,该仿真器具有可调整大小的窗口非矩形选择和 Unicode 字体。Windows 控制台程序(例如交互式 Python)必须通过 "winpty" 启动才能在 MinTTY 中运行。(推荐)

第二种使用 Windows 的默认控制台窗口,Git 将使用 Windows 的默认控制台窗口("cmd.exe"),该窗口可与 Win32 控制台程序(例如交互式Python 或 node.js)一起使用,但默认回滚非常有限,需要将其配置为使用 Unicode 字体才能正确显示非 ASCII 字符,并且在 Windows 10 之前,其窗口不可随意调整大小,并且仅允许选择矩形文本。

选择默认的 “git pull” 行为

git pull 是获取最新的远程仓库分支到本地,并与本地分支合并

上面给了三个 “git pull” 的行为:

第一种 git pull = git fetch + git merge(推荐)

第二种 git pull = git fetch + git rebase

第三种直接获取(不了解)

git pull 只是拉取远程分支并与本地分支合并,而 git fetch 只是拉取远程分支,怎么合并,选择 merge 还是 rebase ,可以再做选择。

选择一个凭证帮助程序

第一种使用跨平台的 Git  凭证管理。提供登录凭证帮助的,Git 有时需要用户的凭据才能执行操作(推荐)

第二种不使用凭证助手

配置额外的选项

第一种启用文件系统缓存,就是将批量读取文件系统数据并将其缓存在内存中以进行某些操作,可以显著提升性能。这个选项默认开启。(推荐)

启用符号链接,符号链接是一类特殊的文件, 其包含有一条以绝对路径或者相对路径的形式指向其它文件或者目录的引用,类似于 Windows 的快捷方式,不完全等同 类Unix(如 Linux) 下的 符号链接。因为该功能的支持需要一些条件,所以默认不开启。

配置实验性选项

尝鲜体验,功能不稳定不推荐选择。

安装成功

git基础配置

配置用户信息

安装完 Git 之后,要做的第一件事就是设置你的用户名和邮件地址。 这一点很重要,因为每一个 Git 提交都会使用这些信息,它们会写入到你的每一次提交中,不可更改:

$ git config --global user.name "John Doe"

$ git config --global user.email johndoe@example.com

再次强调,如果使用了 --global 选项,那么该命令只需要运行一次,因为之后无论你在该系统上做任何事情, Git 都会使用那些信息。 当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global 选项的命令来配置。

很多 GUI 工具都会在第一次运行时帮助你配置这些信息。

查看配置信息

如果想要检查你的配置,可以使用 

git config --list 命令来列出所有 Git 当时能找到的配置。

$ git config --list

user.name=John Doe

user.email=johndoe@example.com

color.status=auto

color.branch=auto

color.interactive=auto

color.diff=auto

你可能会看到重复的变量名,因为 Git 会从不同的文件中读取同一个配置(例如:/etc/gitconfig 与 ~/.gitconfig)。 这种情况下,Git 会使用它找到的每一个变量的最后一个配置。

你可以通过输入 git config <key>: 来检查 Git 的某一项配置

$ git config user.name

John Doe

注:上述配置信息来自Git - 初次运行 Git 前的配置 (git-scm.com)

git常用指令

指令大全(Git 常用命令大全 (runoob.com)

git init # 初始化本地git仓库(创建新仓库)

git config --global user.name "xxx" # 配置用户名

git config --global user.email "xxx@xxx.com" # 配置邮件

git config --global color.ui true # git status等命令自动着色

git config --global color.status auto

git config --global color.diff auto

git config --global color.branch auto

git config --global color.interactive auto

git config --global --unset http.proxy # remove proxy configuration on git

git clone git+ssh://git@192.168.53.168/VT.git # clone远程仓库

git status # 查看当前版本状态(是否修改)

git add xyz # 添加xyz文件至index

git add . # 增加当前子目录下所有更改过的文件至index

git commit -m 'xxx' # 提交

git commit --amend -m 'xxx' # 合并上一次提交(用于反复修改)

git commit -am 'xxx' # 将add和commit合为一步

git rm xxx # 删除index中的文件

git rm -r * # 递归删除

git log # 显示提交日志

git log -1 # 显示1行日志 -n为n行

git log -5

git log --stat # 显示提交日志及相关变动文件

git log -p -m

git show dfb02e6e4f2f7b573337763e5c0013802e392818 # 显示某个提交的详细内容

git show dfb02 # 可只用commitid的前几位

git show HEAD # 显示HEAD提交日志

git show HEAD^ # 显示HEAD的父(上一个版本)的提交日志 ^^为上两个版本 ^5为上5个版本

git tag # 显示已存在的tag

git tag -a v2.0 -m 'xxx' # 增加v2.0的tag

git show v2.0 # 显示v2.0的日志及详细内容

git log v2.0 # 显示v2.0的日志

git diff # 显示所有未添加至index的变更

git diff --cached # 显示所有已添加index但还未commit的变更

git diff HEAD^ # 比较与上一个版本的差异

git diff HEAD -- ./lib # 比较与HEAD版本lib目录的差异

git diff origin/master..master # 比较远程分支master上有本地分支master上没有的

git diff origin/master..master --stat # 只显示差异的文件,不显示具体内容

git remote add origin git+ssh://git@192.168.53.168/VT.git # 增加远程定义(用于push/pull/fetch)

git branch # 显示本地分支

git branch --contains 50089 # 显示包含提交50089的分支

git branch -a # 显示所有分支

git branch -r # 显示所有原创分支

git branch --merged # 显示所有已合并到当前分支的分支

git branch --no-merged # 显示所有未合并到当前分支的分支

git branch -m master master_copy # 本地分支改名

git checkout -b master_copy # 从当前分支创建新分支master_copy并检出

git checkout -b master master_copy # 上面的完整版

git checkout features/performance # 检出已存在的features/performance分支

git checkout --track hotfixes/BJVEP933 # 检出远程分支hotfixes/BJVEP933并创建本地跟踪分支

git checkout v2.0 # 检出版本v2.0

git checkout -b devel origin/develop # 从远程分支develop创建新本地分支devel并检出

git checkout -- README # 检出head版本的README文件(可用于修改错误回退)

git merge origin/master # 合并远程master分支至当前分支

git cherry-pick ff44785404a8e # 合并提交ff44785404a8e的修改

git push origin master # 将当前分支push到远程master分支

git push origin :hotfixes/BJVEP933 # 删除远程仓库的hotfixes/BJVEP933分支

git push --tags # 把所有tag推送到远程仓库

git fetch # 获取所有远程分支(不更新本地分支,另需merge)

git fetch --prune # 获取所有原创分支并清除服务器上已删掉的分支

git pull origin master # 获取远程分支master并merge到当前分支

git mv README README2 # 重命名文件README为README2

git reset --hard HEAD # 将当前版本重置为HEAD(通常用于merge失败回退)

git rebase

git branch -d hotfixes/BJVEP933 # 删除分支hotfixes/BJVEP933(本分支修改已合并到其他分支)

git branch -D hotfixes/BJVEP933 # 强制删除分支hotfixes/BJVEP933

git ls-files # 列出git index包含的文件

git show-branch # 图示当前分支历史

git show-branch --all # 图示所有分支历史

git whatchanged # 显示提交历史对应的文件修改

git revert dfb02e6e4f2f7b573337763e5c0013802e392818 # 撤销提交dfb02e6e4f2f7b573337763e5c0013802e392818

git ls-tree HEAD # 内部命令:显示某个git对象

git rev-parse v2.0 # 内部命令:显示某个ref对于的SHA1 HASH

git reflog # 显示所有提交,包括孤立节点

git show HEAD@{5}

git show master@{yesterday} # 显示master分支昨天的状态

git log --pretty=format:'%h %s' --graph # 图示提交日志

git show HEAD~3

git show -s --pretty=raw 2be7fcb476

git stash # 暂存当前修改,将所有至为HEAD状态

git stash list # 查看所有暂存

git stash show -p stash@{0} # 参考第一次暂存

git stash apply stash@{0} # 应用第一次暂存

git grep "delete from" # 文件中搜索文本“delete from”

git grep -e '#define' --and -e SORT_DIRENT

git gc

git fsck

简易教程

​创建 git 仓库:

mkdir test

cd test

git init

touch README.md

git add README.md

git commit -m "first commit"

git remote add origin https://gitee.com/fjg101/test.git

git push -u origin "master"
​

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值