git的使用

Posted AmorR

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git的使用相关的知识,希望对你有一定的参考价值。

Git 安装

在你开始使用 Git 前,需要将它安装在你的计算机上。

  • 在 Linux 上安装

如果你想在 Linux 上用二进制安装程序来安装 Git,公司的 yum 源上已经提供 Git 的 RPM 包,安装命令:

$ sudo yum install git git-config -b current

其中:git-config 是配置 Git 的一些常用配置,如 co 代表 checkout , ci 代表 checkin

要了解更多选择,Git 官方网站上有在各种 Unix 风格的系统上安装步骤,网址为 http://git-scm.com/download/linux。

  • 在 Mac 上安装

一般 Mac OSX 自带 Git 。

如果你想安装更新的版本,可以使用二进制安装程序。 官方维护的 OSX Git 安装程序可以在 Git 官方网站下载,网址为 http://git-scm.com/download/mac。

  • 在 Windows 上安装

在 Git 官方网站下载。 打开 http://git-scm.com/download/win ,下载会自动开始。 要注意这是一个名为 Git for Windows的项目(也叫做 msysGit),和 Git 是分别独立的项目;更多信息请访问 http://msysgit.github.io/

Git 图形化界面和插件

Git GUI
  • Git GUI 是 Git 官方的图形化界面,强项是 commit 前代码改动的浏览和挑选。Windows、Linux 上都能运行。以下描述的是 Windows 的安装和使用。

  • 安装

    在前面一节 安装Git 中已经安装了。

  • 启动运行

    • 方法1:在Windows Explorer,适当目录下,右键菜单,Git GUI Here。
    • 方法2:在命令行界面,敲命令“git gui”。
    • 方法3:开始菜单。
Gitk
  • Gitk 也是 Git 官方的图形化界面,强项是显示版本树、历史信息。Windows、Linux 上都能运行。以下描述的是 Windows 的安装和使用。

  • 安装

    在前面一节 安装Git 中已经安装了。

  • 启动运行

    • 方法1:在命令行界面,敲命令“gitk --all &”。
    • 方法2:Git GUI -> 菜单 -> 版本库 -> 图示所有分支的历史
TortoiseGit (备选)

支持系统:Windows (免费软件)
https://tortoisegit.org/ 下载。

SourceTree (备选)

支持系统:Windows / OS X (免费软件)
https://www.sourcetreeapp.com/

Eclipse 的 Git 插件 EGit(备选)

Eclipse 的插件安装就不在这里赘述了。

EGit插件地址:http://download.eclipse.org/egit/updates

这里有EGit学习材料:http://www.cnblogs.com/hnrainll/archive/2013/03/23/2976797.html

IntelliJ IDEA 上的 Git 插件(备选)

Git 本地环境配置

创建账号

非常简单,只需要登录 git,系统就会自动帮你创建好账号了。

安装 Git

可以在命令行里输入以下命令确认安装情况:

git --version

若没安装或版本低于1.9.5,则需要安装更高版本的 Git,请参考 Git 安装。

启动 Git
  • Linux

    直接在命令行终端输入 Git 命令,比如

    $ git help
    
  • Mac

    直接在命令行终端输入 Git 命令,比如

    $ git help
    
  • Windows

    1. Windows:使用Windows自带的命令行界面

    可以在Windows自己的命令行界面下可以直接运行 Git 命令行,比如

    D:\\gittest\\test> git help
    

    当命令中有些特殊参数的时候,要加上双引号。比如

    D:\\gittest\\test> git log HEAD^
    

    特殊符号^会被Windows误解,所以要加双引号,写成

    D:\\gittest\\test>git log "HEAD^"
    
    1. Windows:使用 msysGit 自带的Bash

    使用 Bash 就不用像上面那样加双引号了。启动 Git Bash 的简便方法是,在 Windows Explorer 里,鼠标右键弹出菜单,Git Bash,如下:
    image

    此外,也可以从Windows开始菜单进入。

    注意,有利有弊,这个Bash对中文的支持不太好哦。

设置 Git

设置用户名和 email(必须设置)

在命令行里输入以下命令来添加用户名和 email ,这个信息将用在后续你的每一次 Git 提交里。

git config --global user.name "AmorR"                    
# 请换成你自己的名字
git config --global user.email "teng0009@126.com"    
# 请换成你自己的邮箱

其他设置

不论 Windows 还是 Linux 还是Mac,建议至少config下述内容:

git config --global push.default simple     
# 我们要求 Git 版本 1.9.5 以上

git config --global core.autocrlf false     
# 让Git不要管Windows/Unix换行符转换的事

Windows上还需要配置:

git config --global core.ignorecase false   
# 设置大小写敏感

以上设置执行完成后,可以通过以下命令查看是否配置正确。ssh

git config --global --list 
#查看设置
创建 SSH Keys

登录 Git ,在右侧上方头像点击“Setting”,继续左侧点击“SSH and GPG keys”

然后点击绿色按钮 “New SSH key”

在本地命令行里生成SSH Key。然后把它复制到上述网页。然后提交表单即可。

添加完成后,确认key是否配置正确,可通过命令检查:

$ ssh git@github.com

如果返回用户的用户名,则表示配置正确。如下:


PTY allocation request failed on channel 0

Welcome to Github, AmorR!

Connection to github.com closed.

如果返回

sign_and_send_pubkey: signing failed: agent refused operation

Permission denied (publickey).

那么请在本机补充运行

ssh-add

确认key配置正确后,你就可以通过 SSH 协议来使用 Git 了。

如果有多个 key 的情况,最好使用 config 文件来配置 Git专用 key

编辑 config 文件:vim ~/.ssh/config config 文件内容:

Host gitlab.alipay-inc.com

HostName gitlab.alipay-inc.com

Port 22

User git

IdentityFile ~/.ssh/id_rsa

基本指令

Step 1
找到你需要操作的 Git 项目,确定你需要使用的协议,如使用 SSH 协议:

git@github.com:AmorR/Amor.git

使用 HTTP 协议:

https://github.com/AmorR/Amor.git

Step 2
获取代码,clone 项目,如 clone 以上 Step1 中的项目,可以选择使用 SSH 协议或 HTTP 协议,选择其中一种就可以了,根据选择的协议使用 git clone 命令:

SSH 协议(需要先按照 Step 0 中说明的配置添加 SSH Key ):

$ git clone git@github.com:AmorR/Amor.git

HTTP 协议(根据提示输入域账号、域密码):

$ git clone https://github.com/AmorR/Amor.git

Step 3
切换到指定分支,如切换到 master 分支

$git checkout master

Step 4
修改代码,并提交代码至本地版本库

// 查看修改过的文件,可以经常使用此命令

$git status 

// 将修改过的文件手动加入索引,供下一步提交

$git add xxx/xxx.js 

// 提交

$git commit -m "注释"

Step 5

推送到远程服务器,如推送 master 分支

$ git push origin master

提交相关:

git add a.vm //添加某个文件到本地暂存区

git add . //添加所有目录下修改过的文件

git rm a.vm //移除某个文件,和git add 相反

git status //用来查看当前工作区的状态

git commit -m "feat:增加构建文件类型说明" //提交并增加提交注释,非常重要且常用的命令。用于将所有通过 git add暂存的文件,提交到本地库。

本地和服务器仓库交互:

git fetch //获取远程仓库的代码

git pull //相当于git fetch + git merge

git push //常会用到的命令,用于将本地的文件推送到服务器上

分支相关:

git branch //查看分支状况

git branch -h //查看其他的命令

git checkout develop-branch //用来切换分支

git log //查看历史

git stash //用来临时存放暂不打算提交的文件

git tag //为代码的历史记录某个点打个标签,一般用来标记发布的版本。

git cherry-pick //用于将另一个分支的某次提交代码,合并到当前分支。

git rebase //用于将另一个分支的最新代码,全量合并到当前分支。

以上是关于git的使用的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段15——git命令操作一个完整流程

VSCode自定义代码片段15——git命令操作一个完整流程

如何管理在每个 git 版本中添加私有代码片段?

markdown Git代码片段

GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段

GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段