GIT常用命令整理

简介: .gitignore:配置忽视的文件和目录,这些文件和目录就不会被git跟踪。

GIT常用命令整理


GIT环境管理

克隆仓库

git clone [url]

.gitignore:配置忽视的文件和目录,这些文件和目录就不会被git跟踪。


配置用户名、密码和邮箱

git config --global user.email "you@example.com"
git config --global user.name "Your Name"
git config --global user.password token
git config --global core.editor "vim"         //git amend编辑器设置

GIT分支管理

基于本地分支创建新分支

git checkout -b [newbranch]

基于远端分支创建本地分支

git checkout -b [newbranch] origin/[remotebranch]

关联本地分支与远端分支

git branch --set-upstream-to=origin/[remotebranch] [localbranch]

提交本地分支之远端仓库,加-f会强制覆盖

git push origin [localbranch]

删除本地分支,-D便是强制删除

git branch -d [localbranch]

删除远端分支

git push origin --delete [remotebranch]

分支关联状态查看

git branch -vv #查看分支关联状态
git branch -r  #查看远程分支
git branch -a  #查看所有分支

切换分支

git checkout [localbranch]

代码提交:

代码拉取

#git pull=git fetch + git merge
git pull             #取回远程主机某个分支的更新,再与本地的指定分支合并
git fetch            #一旦远程主机的版本库有了更新(即比本地更高的版本),需要将这些更新取回本地,fetch的只是commit_id,不是实际代
git merge            #在本地分支合并远程分支,merge会生成新节点,两个分支提交分开显示
git rebase           #在本地分支合并远程分支,不会生成新节点,将两个分支融合成线性提交

提交代码到暂存区

git add [file]                      #提交该文件到暂存区
git add .                           #提交所有内容到暂存区,包括文件修改及新文件
git add -u                          #只提交被修改文件到暂存区

提交代码到本地仓库

git commit -a -m"注释"              #提交所有到本地仓库

撤销提交

git reset --soft [commitid]             #回退到commit状态
git reset --hard [commitid]             #回退到add状态
git reset --mixed [commitid]            #回退到未修改状态
注意:
HEAD^: 上个版本
HEAD^^: 上上个版本

代码回滚

#git revert是用一次新的commit来回滚之前的commit,git reset是直接删除指定的commit:
git revert [commitid]

整个项目回滚

git reset --hard [commitid]
git push -f origin [remotebranch]

暂存区:

stash会把所有未提交的修改(包括暂存的和非暂存的)都保存起来,用于后续恢复当前工作目录。

git stash save "注释"                                 #保存
git stash list                                        #查看现有stash
git stash pop/apply stash@{0}                         #恢复某次暂存, 区别在于apply不会把记录移除
git stash drop stash@{0}                              #移除某次暂存,后两者不指定则默认最新次暂存

版本对比:

git status
git log                                 # 查看提交日志
git log --stat                          # 查看提交日志及修改文件信息
git log --pretty=oneline                # 查看简洁提交日志
git log [commitid1]..[commitid2] --name-status        # 查看多版本提交文件变化
git diff [commitid1] [commitid2]                      # 查看版本提交具体差异

分支多源配置

添加除origin之外的upstream

git remote add upstream [url]

拉取最新upstream内容

git fetch upstream

分支内容调整为与upstream版本一致

git reset --hard upstream/[remotebranch]

提交当前分支

git push origin [localbranch]

标签:

给当前分支打标签,就是给当前的版本做个标记,以便回退到此版本。发布一个版本时,我们通常先在版本库中打 一个标签

git tag [-a] [tag名] [-m] [tag描述]

显示提交tag到远端仓库

git push origin [tag名]

查看tag列表

git tag

删除tag

git tag -d [tag名]
git push origin :refs/tags/[tag名]

检出标签

git checkout [tag名]

子模块:

递归方式克隆子模块初始化

git clone <repository> --recursive 递归的方式克隆整个项目

普通方式克隆子模块

git clone <repository>
git submodule init 初始化子模块
git submodule update 更新子模块

添加子模块

git submodule add <repository> <path> 添加子模块

此时.gitmodules模块新增如下信息

[submodule "<module>"]
      url = ../<module>.git

删除子模块

git rm <module>
git status
git commit -m "remove submodule"
git push origin master

子模块代码更新

git submodule foreach git pull 

其他:

git clean -df #清理workspace中未被git版本控制的文件,比如临时文件,构建出来的二进制文件。
git rebase -i #针对历史提交信息进行修改、合并等操作


目录
相关文章
|
3月前
|
存储 开发工具 git
|
18天前
|
缓存 Java Shell
[Git]入门及其常用命令
本文介绍了 Git 的基本概念和常用命令,包括配置、分支管理、日志查看、版本回退等。特别讲解了如何部分拉取代码、暂存代码、删除日志等特殊需求的操作。通过实例和图解,帮助读者更好地理解和使用 Git。文章强调了 Git 的细节和注意事项,适合初学者和有一定基础的开发者参考。
39 1
[Git]入门及其常用命令
|
3月前
|
开发工具 git
【GIT 第二篇章】GIT常用命令
Git常用命令涵盖初始化、状态管理、提交、分支处理、远程操作等关键流程。`git init`启动本地仓库,`git clone`下载远程仓库。通过`git status`和`git diff`检查工作状态与差异。利用`git add`暂存文件,`git commit`保存更改。借助`git branch`、`git checkout`、`git merge`和`git rebase`管理分支。使用`git fetch`、`git pull`和`git push`同步远程仓库。通过`git reset`、`git revert`和`git checkout`实现版本回退。
68 0
|
1月前
|
开发工具 git
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
这篇文章是关于Git常用命令的总结,包括初始化配置、基本提交、分支操作、合并、压缩历史、推送和拉取远程仓库等操作的详细说明。
113 1
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
|
21天前
|
开发工具 git 开发者
|
21天前
|
开发工具 git 开发者
提升Git效率:掌握这5个高级命令
【10月更文挑战第17天】
42 0
|
2月前
|
存储 Linux 开发工具
掌握 Git 命令:每个开发者的必备技能
无论团队项目还是个人开发,掌握 Git 命令都是必备技能。本文介绍 Git 的基本概念与命令,如初始化仓库 (`git init`)、添加文件 (`git add`)、提交更改 (`git commit`)、检出分支 (`git checkout`)、合并分支 (`git merge`) 等,还分享了高级技巧如查看差异 (`git diff`)、撤销提交 (`git revert`)、修复合并冲突 (`git mergetool`) 和使用别名简化命令 (`git config --global alias.ci commit`)。
|
2月前
|
机器学习/深度学习 Shell 开发工具
Python使用管道执行git命令报错|4-7
Python使用管道执行git命令报错|4-7
|
2月前
|
存储 Linux 开发工具
Git基础命令,分支,标签的使用【快速入门Git】
本文详细介绍了Git版本控制系统的基础概念和常用命令,包括工作区、暂存区和版本库的区别,文件状态的变化,以及如何进行文件的添加、提交、查看状态、重命名、删除、查看提交历史、远程仓库操作和分支管理,还涉及了Git标签的创建和删除,旨在帮助读者快速入门Git。
Git基础命令,分支,标签的使用【快速入门Git】
|
2月前
|
存储 Linux 开发工具
掌握 Git 命令:每个开发者的必备技能
本文介绍 Git 的核心概念,如仓库、提交、分支与合并,并提供了常用命令,如初始化仓库 (`git init`)、提交更改 (`git commit -m &quot;Commit message&quot;`)、拉取 (`git pull`) 和推送 (`git push`) 等。此外,还分享了高级技巧,如撤销提交 (`git revert &lt;commit&gt;`)、交互式暂存 (`git add -i`) 和使用别名简化命令 (`git config --global alias.ci commit`) 等,帮助开发者提升效率。无论是初学者还是资深开发者,都能从中受益。