gitlinux
‘壹’ 如何在linux下使用Git
Git是一款开源分布式版本控制系统,能够帮助Linux管理内核开发,那么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 从工作区删除
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显示信息更加详细
*分支推送到远程库:即将所有本地的提交推送到远程库
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怎么在linux上使用其他用户名
首先右击桌面,在单击打开终端。
打开终端后可以看到如下图,在输入命令:adser 这个是要创建用户名,lifeng 是取的用户名,adser lifeng是创建lifeng名,在回车。
回车之后在输入,tail -l /etc/passwd可以看到lifeng是空的密码。
要设置密码的话在输入passwd lifeng,在回车。
回车之后在输入要设置的密码,在回车。
在输入确认密码,在回车。
出现如下图就可以看到了设置密码成功了。
在查看lifeng是加密了,在输入tail -l /etc/shadow命令在回车。可以看到了lifeng后面加密的数字就可以了。
‘叁’ linux git.exe在哪
取决于你使用的是哪个Linux发行版,通常在/etc/rc.d /etc/init.d等目录下
‘肆’ linux系统下怎么使用git
git命令是用来管理文件的程序,它十分类似DOS下的Norton Commander,具有互动式操作界面。它的操作方法和Norton Commander几乎一样:
git pull:从其他的版本库(既可以是远程的也可以是本地的)将代码更新到本地,例如:'git pull origin master'就是将origin这个版本库的代码更新到本地的master主枝,该功能类似于SVN的update
git add:是将当前更改或者新增的文件加入到Git的索引中,加入到Git的索引中就表示记入了版本历史中,这也是提交之前所需要执行的一步,例:'git add app/model/user.rb'就会增加app/model/user.rb文件到Git的索引中
git rm:从当前的工作空间中和索引中删除文件,例如'git rm app/model/user.rb'
git commit:提交当前工作空间的修改内容,类似于SVN的commit命令,例如'git commit -m story #3, add user model',提交的时候必须用-m来输入一条提交信息
git push:将本地commit的代码更新到远程版本库中,例如'git push origin'就会将本地的代码更新到名为orgin的远程版本库中
git log:查看历史日志
git revert:还原一个版本的修改,必须提供一个具体的Git版本号,例如'git revert ',Git的版本号都是生成的一个哈希值
git branch:对分支的增、删、查等操作,例如'git branch new_branch'会从当前的工作版本创建一个叫做new_branch的新分支,'git branch -D new_branch'就会强制删除叫做new_branch的分支,'git branch'就会列出本地所有的分支
git checkout:Git的checkout有两个作用,其一是在不同的branch之间进行切换,例如'git checkout new_branch'就会切换到new_branch的分支上去;另一个功能是还原代码的作用,例如'git checkout app/model/user.rb'就会将user.rb文件从上一个已提交的版本中更新回来,未提交的内容全部会回滚
git rebase:用下面两幅图解释会比较清楚一些,rebase命令执行后,实际上是将分支点从C移到了G,这样分支也就具有了从C到G的功能
‘伍’ linux git clone命令什么意思
git是一种开源的分布式版本控制系统。
网站中文学习链接:https://git-scm.com/book/zh/v2
git clone 命令是客户端从git服务器上克隆项目仓库,然后接着开发项目内容,存到这个项目仓库中,简单来说就是从git服务器上克隆项目仓库,然后接着开始开发。
用法:git clone git@192.168.1.1/project/project.git
其中git是git服务器上创建的项目仓库用户
192.168.1.1是git服务器地址
project是git服务器上的项目仓库存储目录
project.git是git服务器上项目仓库存储目录下存放元数据和版本数据目录
‘陆’ linux自带git在哪
输入git有就有没有就装
‘柒’ git一般都在linux下使用吗
linux下git的使用方法前言 git是linux下的版本控制工具。我因为没有大型工程,也没有服务器,所以基本上最有用的push等等就用不上了。我的程序是一个人开发的,我现在想标记我的版本,并且可以在版本之间切换来切换去,有一个人建议使用git-tag,下面就讲讲git我用的到的用法:正文一:建库#建立一个空的库,在当前目录下创建.gitgit init二:添加 #添加一个文件或一个目录下的所有文件到版本库git add a.cppgit add ./src/三:提交#把现在的代码提交(到本地)#[-a] 把现在代码库已经git add过的代码全部提交上去(?)#[-m message] 加上你提交附带的信息,以后在切换tag的时候就会同时告诉你这个git commit -a -m message四:标签(需要先执行提交)#添加一个标签#[-a tag-name] 添加tag的名字(比如-a V1.0)#[-m message] 添加tag的信息,这里的信息是在tag show中显示的,而不是像commit中的在切换时显示 git tag -a tag-name -m message#删除一个标签#[-d tag-name] 删除tag的名字(如-d V1.0)git tag -d tag-name#切换到一个标签#似乎branch和tag都是用相同的切换git checkout tag-name
‘捌’ linux git 安装后怎么卸载
需要知道要卸载的软件的名称,比如现在打算卸载 Dropbox ,这个很容易知道它的名称了
‘玖’ linux 安装好git 怎么用
Git服务程序中提交数据、移除数据、移动数据、查询历史记录、还原数据及管理标签等,满足日常工作的需求。
同时还为包括了分支结构的创建与合并,遇到分支内容冲突的解决办法,动手部署Git服务器及使用Github托管服务等一些强大的功能,你可以参考下
一、在正式使用前,我们还需要弄清楚Git的三种重要模式,分别是已提交、已修改和已暂存:
已提交(committed):表示数据文件已经顺利提交到Git数据库中。
已修改(modified):表示数据文件已经被修改,但未被保存到Git数据库中。
已暂存(staged):表示数据文件已经被修改,并会在下次提交时提交到Git数据库中。
提交前的数据文件可能会被随意修改或丢失,但只要把文件快照顺利提交到Git数据库中,那就可以完全放心了,流程为:
1.在工作目录中修改数据文件。
2.将文件的快照放入暂存区域。
3.将暂存区域的文件快照提交到Git仓库中。
执行yum命令来安装Git服务程序:
[root@linuxprobe ~]# yum install -y git
Loaded plugins: langpacks, proct-id, subscription-manager
………………省略部分安装过程………………
Installing:
git x86_64 1.8.3.1-4.el7 rhel7 4.3 M
Installing for dependencies:
perl-Error noarch 1:0.17020-2.el7 rhel7 32 k
perl-Git noarch 1.8.3.1-4.el7 rhel7 52 k
perl-TermReadKey x86_64 2.30-20.el7 rhel7 31 k
………………省略部分安装过程………………
Complete!
首次安装Git服务程序后需要设置下用户名称、邮件信息和编辑器,这些信息会随着文件每次都提交到Git数据库中,用于记录提交者的信息,而Git服务程序的配置文档通常会有三份,针对当前用户和指定仓库的配置文件优先级最高:
配置文件 作用
/etc/gitconfig 保存着系统中每个用户及仓库通用配置信息。
~/.gitconfig
~/.config/git/config 针对于当前用户的配置信息。
工作目录/.git/config 针对于当前仓库数据的配置信息。
第一个要配置的是你个人的用户名称和电子邮件地址,这两条配置很重要,每次 Git 提交时都会引用这两条信息,记录是谁提交了文件,并且会随更新内容一起被永久纳入历史记录:
[root@linuxprobe ~]# git config --global user.name "Liu Chuan"
[root@linuxprobe ~]# git config --global user.email "[email protected]"
设置vim为默认的文本编辑器:
[root@linuxprobe ~]# git config --global core.editor vim
嗯,此时查看下刚刚配置的Git工作环境信息吧:
[root@linuxprobe ~]# git config --list
user.name=Liu Chuan
[email protected]
core.editor=vim
二、提交数据
我们可以简单的把工作目录理解成是一个被Git服务程序管理的目录,Git会时刻的追踪目录内文件的改动,另外在安装好了Git服务程序后,默认就会创建好了一个叫做master的分支,我们直接可以提交数据到了。
三、移除数据
有些时候会向把已经添加到暂存区的文件移除,但仍然希望文件在工作目录中不丢失,换句话说,就是把文件从追踪清单中删除。
移动数据
Git不像其他版本控制系统那样跟踪文件的移动操作,如果要修改文件名称,则需要使用git mv命令:
[root@linuxprobe linuxprobe]# git mv readme.txt introction.txt
由于字数限制,不能完全放下,如果你想好好了解,建议你看下http://www.linuxprobe.com/chapter-21.html 这个文档中有详细的用法你可以看看对你有用吗