Git 入门指南(一)

简介: Git 入门指南

Git 简介

Git是目前世界上最先进的分布式版本控制系统。

如果你是小白,请先看这里: www.liaoxuefeng.com/wiki/001373…

image.png


专用名词

  • Workspace: 工作区
  • Index / Stage: 暂存区
  • Repository: 仓库区 ( 本地版本库 )
  • Remote: 远程仓库 ( 远程仓库 / 远程版本库 )

Git 工作流

Fork a repo

help.github.com/en/articles…

Creating a pull request from a fork

help.github.com/en/articles…

代码库

在当前目录新建一个Git代码库

git init

新建一个目录,将其初始化为Git代码库

git init [project-name]

克隆代码库, 默认克隆所有分支

git clone [url]

克隆指定分支代码

git clone [url] -b [branch name]
eg.
git clone https://github.com/vuejs/vuex.git -b dev

克隆默认分支最新一次提交

git clone [url] --depth=1
eg.
git clone https://github.com/reiinakano/fast-style-transfer-deeplearnjs.git --depth=1

克隆指定分支指定层数

git clone -b [branch name] [url]  --depth=1
克隆 dev 分支最近一次提交 eg.
git clone -b dev  https://github.com/vuejs/vuex.git --depth=1

Git 配置

Git的设置文件为 .gitconfig ,它可以在用户主目录下(全局配置),也可以在项目目录下(项目配置)。

显示当前Git配置

git config --list

编辑Git配置文件

git config -e [--global] 

设置代码时的用户信息 建议设置此项,后面的操作会很方便

git config [--global] user.name "[name]"
git config [--global] user.email "[email address]"

增加/删除文件

操作之前先执行 git status 查看一下状态

添加文件到暂存区 建议使用这种方式进行操作

git add [file1] [file2] ...

添加所有改动到暂存区

git add .

删除工作区文件,并且将这次删除放入暂存区

git rm [file1] [file2] ...

停止追踪指定文件,但该文件会保留在工作区

git rm --cached [file]

代码提交

操作之前先执行 git status 查看一下状态

提交暂存区到仓库区

git commit -m [message]

提交暂存区的指定文件到仓库区

git commit [file1] [file2] ... -m [message]

重做上一次commit,并包括指定文件的新变化

git commit --amend [file1] [file2] ...

##分支

列出所有本地分支

git branch

列出所有远程分支

git branch -r

列出所有本地分支和远程分支

git branch -a

新建一个分支,但依然停留在当前分支

git branch [branch-name]

新建一个分支,并切换到该分支

git checkout -b [branch]

切换到指定分支,并更新工作区

git checkout [branch-name]

合并指定分支到当前分支

git merge [branch]

删除本地分支

git branch -d [branch-name]

删除远程分支

git push origin --delete [branch-name]
或者 
git branch -dr [remote/branch]

恢复删除的分支 Git 分支删除后恢复

git branch new_branch commitId

查看信息

查看改动的文件

git status

查看当前分支的版本日志

git log

查看单行日志

git log --pretty=oneline

查看日志主题

git log --pretty=format:%s

查看 commit 的最新编号

git rev-parse HEAD

显示暂存区和工作区的差异

git diff

显示今天写了多少行代码

git diff --shortstat "@{0 day ago}"
git log --author="$(git config --get user.name)" --no-merges --since=1am --stat

过滤 commit . git log --grep

git log --grep chore 
git log --grep --author="John"

标签

列出现有标签

git tag

创建一个含附注类型的标签

git tag -a v0.5.0 -m 'version 0.5.0'

git show 显示各种类型的对象。查看相应标签的版本信息,同时显示打标签时的提交对象

git show v0.5.0

push 单个 tag

git push origin [tagname]
eg:
git push origin v1.0  #将本地v1.0的tag推送到远端服务器

push 所有 tag , 如果不起作用,在 Git 控制台确认账号是否有权限推送 Tag

git push origin --tags

删除本地标签

git tag -d [tagName]

删除远程标签

git push origin :refs/tags/[tagName]


远程同步

下载远程仓库的所有变动

git fetch [remote]

显示所有远程仓库

git remote -v

修剪 - 删除与 origin 相关的陈旧引用

git remote prune origin 

拉取远程仓库的变化,并与本地分支合并

git pull [remote] [branch]

上传本地指定分支到远程仓库

git push [remote] [branch]

强行推送当前分支到远程仓库,即使有冲突 谨慎使用

git push [remote] --force

推送所有分支到远程仓库

git push [remote] --all

Git 证书问题

临时生效,退出shell后失效

export GIT_SSL_NO_VERIFY=true 

永久生效

echo 'export GIT_SSL_NO_VERIFY=true' >> ~/.bashrc 

win10 出现证书问题 解决方式

git config --global http.sslVerify false

Git 入门指南(二):https://developer.aliyun.com/article/1391866

目录
相关文章
|
8月前
|
开发工具 git 索引
【git】入门
【git】入门
75 2
|
8月前
|
Shell Linux 开发工具
Git入门(windows系统)
Git入门(windows系统)
78 1
|
1月前
|
Linux 开发工具 git
【Git】Git 完全指南:从入门到精通
Git 是一种强大的版本控制工具,掌握了其基本命令和高级特性后,可以大大提高开发效率并方便团队协作。通过本篇文章,你已经学会了 Git 的核心命令及其使用方法,希望你能够灵活运用 Git 在实际项目中进行版本管理。
98 4
|
2月前
|
缓存 Java Shell
[Git]入门及其常用命令
本文介绍了 Git 的基本概念和常用命令,包括配置、分支管理、日志查看、版本回退等。特别讲解了如何部分拉取代码、暂存代码、删除日志等特殊需求的操作。通过实例和图解,帮助读者更好地理解和使用 Git。文章强调了 Git 的细节和注意事项,适合初学者和有一定基础的开发者参考。
60 1
[Git]入门及其常用命令
|
5月前
|
存储 Shell 开发工具
Git 入门:从零开始掌握版本控制的艺术
【8月更文第16天】 在软件开发中,版本控制是一项至关重要的技能。它帮助开发者追踪文件的变化历史,并且可以在多个开发者之间协同工作。Git 是目前最流行的分布式版本控制系统之一。本文将带你从零开始学习 Git 的基本使用方法。
69 0
|
6月前
|
数据可视化 程序员 开发工具
小白也能玩转Git:从入门到实战详细教程
小白也能玩转Git:从入门到实战详细教程
|
8月前
|
开发工具 git 开发者
Git入门:轻松掌握版本控制的艺术
【5月更文挑战第13天】Git是流行的版本控制系统,适合各种规模的项目。本文引导读者入门Git,学习版本控制艺术。内容涵盖Git简介、安装配置、基础操作(如初始化、添加文件、提交、查看状态和历史)、分支管理、协作开发(克隆、推送、拉取)及高级用法,如标签管理、子模块和版本比较。遵循最佳实践,如频繁提交、有意义的提交信息和合理分支管理,可提升开发效率。
|
7月前
|
存储 Linux 开发工具
Git【入门】这一篇就够了
Git【入门】这一篇就够了
58 0
|
8月前
|
程序员 开发工具 git
好程序员Git入门到精通教程
本课程主要通过命令行和idea来介绍Git的安装、仓库创建、工作流、远程仓库、克隆仓库、标签管理和分支管理等Git的主要内容。 另外关于GitHub的使用介绍也有完整的说明和使用,接轨生产环境使用方式。
48 1
好程序员Git入门到精通教程
|
8月前
|
数据可视化 开发工具 git
Git代码版本管理入门
Git代码版本管理入门