如何在Linux下使用Git

2016-02-19 10:45 2 1 收藏

人生本是一个不断学习的过程,在这个过程中,图老师就是你们的好帮手,下面分享的如何在Linux下使用Git懂设计的网友们快点来了解吧!

【 tulaoshi.com - Linux教程 】

Git是一款开源分布式版本控制系统,能够帮助Linux管理内核开发,那么Linux要如何使用Git呢?下面图老师小编就给大家介绍下Linux使用Git的方法,感兴趣的朋友不妨来了解下。

 如何在Linux下使用Git

*初始化git仓库,使用git init命令

*添加文件到git仓库分两步:

1、使用git add filename ;可分多次使用,添加多个文件到暂存区

2、使用git commit -m 说明 ;完成提交到分支

*查看工作区状态,使用git status 命令;如果提示有修改可使用git diff filename 查看修改内容

*HEAD指向当前版本,HEAD^表示上一个版本,HEAD^^上上一个版本HEAD~100指向之前第100个版本。

*回退版本:使用git log查看提交历史;使用git log --pretty=oneline 精简显示

使用git reset --hard commit_id 回退到版本号为commit_id的版本

*回退版本之后如果想再看改回来,可以使用git reflog 查看历史命令,找出想改回的版本号,再使用git reset hard commit_id 返回即可。

*注意:git跟踪并管理的是修改,而不是文件,如果一个文件修改并add之后,再次修改,如果不再次add就提交的话,只会提交第一次的修改。

*撤销修改:

1、如果文件还在工作区,即没有add也没有commit,则使用git checkout -- filename 还原到服务器版即可;

2、如果已经add到暂存区,首先使用git reset HEAD filename从暂存区取回工作区,再按照1进行操作即可;

3、如果已经提交到版本库,则按照版本回退的方式进行修改即可;

4、如果已经push到远程仓库,就麻烦了

*删除使用以下命令:

1、git rm filename 从工作区删除

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)

2、git commit -m 说明 更新分支中文件进行删除

将在工作区的文件删除之后,可以使用git checkout -- 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、git stash pop 恢复时会删除stash中的内容

*远程库信息产看使用git remote (-v)加上-v显示信息更加详细

*分支推送到远程库:即将所有本地的提交推送到远程库

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)

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 origin tag_name

一次推送所有标签到远程库:git push origin --tag

上面就是Linux使用Git的方法介绍了,本文介绍了git init命令的使用,git的删除,分支的创建及删除等,希望你对git的使用有了进一步的了解。

来源:https://www.tulaoshi.com/n/20160219/1595651.html

延伸阅读
标签: 电脑入门
Linux系统中有时需要检测某个条件是否成立,那么就要用到test命令了,Linux下test的用法有很多,下面就随图老师小编一起来学习下Linux系统中如何使用test命令吧。 1.判断一个命令的结果使用test,其返回0,或一个整数。返回0表示true,返回整数表示错误码 2.获取上一个命令的返回结果使用$? 3.例如 我的服务器上面存在/home/www...
标签: 电脑入门
Linux输入法的切换和Windows一样,也可使用快捷切换,fcitx输入法是众多输入法中的一种,有些朋友习惯使用该输入法,下面图老师小编就给大家介绍下Linux如何安装fcitx输入法,感兴趣的朋友不妨来了解下吧。 linux系统输入法中英文切换用CTRL+空格键,其它用SHIFT+CTRL。 fcitx输入法安装教程: 1.建议通过发行版的包管理软件来安装,通...
标签: 电脑入门
在Linux操作中有时会遇到使用代理ip来访问的网站用户,这就需要配置Nginx限制其访问,下面图老师小编就给大家介绍下Linux系统中如何配置Nginx来拒绝代理ip访问。 先大概说说简单的结构前端一个Nginx反向代理,后端一个Nginx instance app for PHP实际上就是个Discuz,之前面对CC攻击都是预警脚本或者走CDN,但是这次攻击者不再打流量,而是针...
1、去http://Java.sun.com/j2se/1.4.2/download.Html 下载一个Linux Platform的JDK,建议下载RPM自解压格式的(RPM in self-extracting file,j2sdk-1_4_2_06-linux-i586- rpm.bin)。 2. 上载到Linux服务器上,在shell下执行命令: [root@LinuxServer rpm]# chmod 755 j2sdk-1_4_2_06-linux-i586-rpm.bin [root@LinuxServer rpm]# ./j2sd...
标签: 电脑入门
如果head命令用于查看文件的头部,那么tail命令就正好相反,tail命令主要用于查看文件内容的结尾,下面图老师小编就给大家详细介绍下Linux下tail的用法吧。 1.命令格式; tail[必要参数][选择参数][文件] 2.命令功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。 3.命令参数: ...

经验教程

822

收藏

57
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部