Git基本操作
Posted -abm
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git基本操作相关的知识,希望对你有一定的参考价值。
一、git使用 配置文件.git/config文件
1、首先安装git:yum install -y git
2、自己创建git仓库:即创建一个空目录用来存放代码mkdir /usr/local/git_house
3、执行git init创建版本库,会在目录下生成.git
4、创建代码文件添加到仓库:
1)创建文件readme.txt
2)命令git add告诉把文件添加到仓库:Gitgit add readme.txt
3)用命令git commit告诉Git,把文件提交到仓库:git commit -m "wrote a readme file"
注:可以add多个代码文件,然后执行一次commit
5、查看git记录:git log ; git reflog;
6、git status 时刻掌握仓库当前的状态;
7、git diff readme.txt 查看具体修改细节;
二、版本回退
1、使用命令:git reset --hard HEAD^
用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
2、恢复回退只前的:只需要指定HEAD号:用git reset --hard 号
git reset --hard 3628164
如何查看版本号:git reflog查看
三、撤销操作:
1、add之前:用checkout
$ git checkout -- readme.txt
2、commit之前:用reset
$ git reset HEAD readme.txt
小结
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。
四、删除操作:
1、正常删除
场景:在工作区删除了test.txt,git status时发现有删除,我们本来要删除
git rm test.txt
git commit -m "remove test.txt"
2、错误删除(需要恢复)
git checkout -- test.txt
五、使用GitHub
1、初次使用需要给GitHub配置ssh公匙,将本地的id_rsa.pub内容复制到GitHub
ssh-keygen -t rsa -C "[email protected]"
2、在远端创建仓库,然后在本地通过命令连接:
$ git remote add origin [email protected]:michaelliao/learngit.git
其中michaelliao,是你GitHub用户名,learngit.git是远端仓库
3、下一步,就可以把本地库的所有内容推送到远程库上:
$ git push -u origin master
-u -u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
4、克隆到本地:
git clone [email protected]:michaelliao/gitskills.git
其中其中michaelliao,是你GitHub用户名,gitskills.git是远端仓库
六、分支
Git鼓励大量使用分支:
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
七、配置别名(删除别名直接在git.conf中删除)
告诉Git,以后st就表示status:
$ git config --global alias.st status
$ git config --global alias.lg "log --color --graph --pretty=format:‘%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset‘ --abbrev-commit"
八、问题:
1、执行git merge featurl提示*** Please tell me who you are.
[[email protected] git_house]# git config user.name "Yan199405"
[[email protected] git_house]# git merge featurl
以上是关于Git基本操作的主要内容,如果未能解决你的问题,请参考以下文章