*初始化git仓库,使用gitinit命令
*添加文件到git仓库分两步:
1、使用git add filename ;可分多次使用,添加多个文件到暂存区
2、使用git commit -m “说明” ;完成提交到分支
兄弟连linux培训
教程 Git在
linux
下的使用
*查看工作区状态,使用git status 命令;如果提示有修改可使用git diff filename 查看修改内容
*HEAD指向当前版本,HEAD^表示上一个版本,HEAD^^上上一个版本……HEAD~100指向之前第100个版本。
*回退版本:使用git log查看提交历史;使用gitlog --pretty=oneline 精简显示
使用git reset --hardcommit_id 回退到版本号为commit_id的版本
*回退版本之后如果想再看改回来,可以使用git reflog 查看历史命令,找出想改回的版本号,再使用git resethard commit_id 返回即可。
*注意:git跟踪并管理的是修改,而不是文件,如果一个文件修改并add之后,再次修改,如果不再次add就提交的话,只会提交第一次的修改。
*撤销修改:
1、如果文件还在工作区,即没有add也没有commit,则使用gitcheckout -- filename 还原到服务器版即可;
2、如果已经add到暂存区,首先使用git reset HEAD filename从暂存区取回工作区,再按照1进行操作即可;
3、如果已经提交到版本库,则按照版本回退的方式进行修改即可;
4、如果已经push到远程仓库,就麻烦了
*删除使用以下命令:
1、gitrm filename 从工作区删除
2、gitcommit -m ”说明“ 更新分支中文件进行删除
将在工作区的文件删除之后,可以使用gitcheckout -- filename 从分支中取回,但是只能恢复文件到最新版本,最后一次提交之后的修改则不能恢复。
*分支:
1、创建分支
git checkout -b branchname 创建并切换到改分区,相当于一下两个命令:
git branch branchname 创建分支
git checkout branchname 切换到分区
2、查看当前指向的分支:git branch 会列出所有分支,当前指向的分支之前多了个*
3、切换分支就是git checkout branchname
4、合并分支:git merge branchname 合并branchname到当前分支
5、删除分支:git branch -d branchname 删除branchname分支
注意:创建、合并、删除分支都非常快,git鼓励使用分支完成某个任务,合并后删除分支,和直接在master分支上进行工作是一样的效果,但是过程更加安全; 这些之所以快是因为在这些过程中我们只是修改了指向分支的指针,如创建一个branch就是创建了一个指向分支的指针,然后修改HEAD指向该指针;即HEAD指向分支,分支就是提交。
*冲突解决:git无法自动合并分支时,就必须首先解决冲突;解决冲突之后,再提交,即完成了合并
使用git log --graph 可以查看分支合并图。
*保存工作现场 git stash 保存之后就可以进行其他工作 而不影响上次的修改
恢复工作现场:1、git stash apply 恢复时并不删除stash中内容
2、gitstash pop 恢复时会删除stash中的内容
*远程库信息产看使用git remote (-v)加上-v显示信息更加详细
*分支推送到远程库:即将所有本地的提交推送到远程库
git push origin(远程库名) master (要推送的分支)
*抓取分支:git pull ; git clone
*协作模式:
1、使用git push origin branchname 推送自己的修改
2、如果推送失败,因为远程分支比本地更新,先使用git pull 合并
3、如果合并有冲突,解决冲突,在本地提交
4、再推送
注意:如果使用git pull 合并时提示 ”no tracking information“说明本地分支没有和远程分支建立链接关系,使用以下指令建立关系:git branch --set -upstream branch origin/branchname
*在本地创建与远程对应的分支:git branch -b branchname origin/branchname 本地与远程分支的名称最好一致
*创建标签
1、打标签git tag name 默认标签打在最新提交的commit上,如果想打在其他版本上,找到commit_id即可
2、显示标签:git log -pretty=oneline --abbrev -commit
git tag tag_name commit_id
3、查看标签:git tag 显示所有标签
4、查看标签信息:git show tag_name
5、创建带有说明的标签: git tag -a tag_name -m ”信息“;-a表示标签名,-m指定说明文字
*操作标签:git tag -d tag_name 删除标签
推送标签到远程库:git push origintag_name
一次推送所有标签到远程库:git pushorigin --tag
分享到:
相关推荐
在早期,Linux内核的版本控制使用的是BitKeeper,但由于版权问题,Linus Torvalds决定创建一个自己的版本控制系统,这就是Git。Git的设计理念支持分布式工作流程,确保了每个开发者都有一个完整的项目版本历史,便于...
Git的诞生是为了应对Linux社区在代码管理上的困境。2002年之前,Linux的源代码管理依靠手工合并来自世界各地志愿者的补丁。2002年,Linus Torvalds开始使用商业的分布式版本控制系统BitKeeper来管理Linux代码。然而...
在Git的使用中,首先我们需要了解Git的基本概念。Git的工作流程通常包括三个工作区:工作区(Working Directory)、暂存区(Index)和版本库(Repository)。开发者在工作区进行日常开发,修改的文件会被暂存到暂存...
最后,教程强调了Git在当前的开源和企业项目中得到广泛应用,如Linux内核、Perl、Eclipse、Gnome等项目都采用了Git。相比之下,SVN由于种种局限性,在开源项目中逐渐失宠,而企业部署SVN也面临诸多困惑和挑战。Git的...
诞生于2005年,因“穷”而生:Bitkeeper收回了Linux社区免费使用的权利,因此Linux社区(主要是Linus)自己开发了Git;
### Git版本控制工具使用教程详解 #### 一、Git简介 **1.1 Git是什么** Git 是一款免费且开源的分布式版本控制系统,适用于各种规模的软件项目开发。它由Linus Torvalds于2005年为了更好地管理Linux内核源代码而...
在这一新版Linux视频教程中,预计会涉及以下知识点: 1. **Linux基础**:介绍Linux的历史、哲学以及主要发行版,包括Ubuntu、CentOS、Red Hat等。 2. **安装与启动流程**:讲解Linux系统的安装过程,引导加载器...
07Linux C程序设计.pdf可能是关于在Linux环境下使用C语言进行编程的教程。C语言是编写Linux系统软件的首选语言,因为它提供了低级内存管理和系统调用接口。学习内容可能涵盖标准输入/输出、文件操作、系统调用、...
通过深入研究“Solaris内部Linux培训资料”,我们可以掌握如何在Solaris环境中理解和应用Linux概念,这对于在多平台环境下工作的IT专业人员来说,无疑增加了工作的灵活性和效率。无论是系统管理员、开发人员还是运维...
2. **Linux高级培训教程** - **系统管理**:学习用户管理、进程控制、网络配置和系统日志分析。 - **软件包管理**:了解如何使用包管理器(如apt、yum或dnf)安装、更新和移除软件。 - **Shell脚本编程**:学习...
在“Linux培训系列 新手教学”中,我们将深入探索Linux操作系统的基础知识,这对于初学者来说是一块重要的基石。Linux是一种自由、开放源码的操作系统,它在全球范围内被广泛应用于服务器、超级计算机、移动设备和...
这个入门教程适用于 Git 新手,旨在降低公司内部推广 Git 的培训成本。虽然内容可能较为初级,但对于理解 Git 的基本操作和概念非常有帮助。为了深入掌握 Git,需要不断实践和探索,包括高级特性如rebasing、cherry-...
"Linux培训PPT资料"是一份详细讲解Linux操作系统的教程,旨在帮助初学者和有经验的IT专业人士深入理解和掌握Linux的核心概念和技术。 这份资料可能涵盖以下关键知识点: 1. **Linux历史与哲学**:介绍Linux的起源...
在学习过程中,读者不仅可以学习到C语言的基本语法,如变量、类型、运算符、流程控制等,还可以了解如何在Linux下进行文件操作,如打开、读写、关闭文件;学习如何利用系统调用进行进程控制,如创建、通信、同步;...
在"Linux培训系列(经典珍藏)"中,我们可能会深入学习到Linux系统的核心概念、常用命令以及系统的管理技巧。这个系列教程无疑是Linux初学者和进阶者的重要资源。 首先,让我们谈谈Linux的基本概念。Linux是一个...
【飞漫Linux编程培训】是一份经典的入门级教程,适合有一定C/C++语言基础和Linux操作经验的学习者。这份文档由北京飞漫软件技术有限公司在2003年推出,涵盖了Linux开发的多个核心主题,旨在提升程序员在Linux环境下...
GitKraken是一款强大的Git版本控制工具,专为提高开发者在Linux平台上的工作效率而设计。它以其直观的用户界面和丰富的功能集赢得了广泛好评。GitKraken不仅适合初学者,也适用于经验丰富的Git用户,提供了对Git操作...
13. **程序开发与调试**:简述Linux下的开发环境,包括编译器、调试器、版本控制工具(如GCC、GDB、Git等),以及基本的编程概念。 通过《Red Hat Linux 9.0 魔鬼培训教程》,读者不仅可以获得扎实的Linux基础知识...
- **Git**:Git 是一种分布式版本控制系统,由 Linux 内核之父 Linus Torvalds 在 2005 年创建。它主要用于跟踪文件集(即仓库或 repo)的变更历史。Git 提供了一种高效且灵活的方式来管理文件的修改,支持本地和...