git 的使用

1、配置自己的GIT

git config --global user.name "You name"

git config --blobal user.mail "example@example.com"

查看日志

git log

example:

    修改文件file3.txt

不添加,使用   git diff 查看不同,添加后查看不到

添加已经修改的文件:

git add file3.txt

查看状态

git status

提交已经修改的文件:

git commit --author='wyl wyl@vcmy.com' -m 'add line I'm fine!'

版本回退:

先用git log 显示所有日志

[root@hadoop1 learngit]# git log --pretty=oneline

9ea25f9cf879103de09a7bc377b83cfe5636463e add line fdfdffd

5ef21d6039755875479ac697a43224de1a89fffe file3

00581305e6dc9da51bab4595b0b66834cd2743b2 add line heloo today

962aff30e8e7853c2540dacf0cb1a3cb44eab9be add file3.txt

d1a0d05724498d991ac2f93934aa1f9024d06580 add 2 files

d1a11fb72b251783d78e4ad7d937e52cc3b22504 wrote a readme file

git reset 命令回退版本

git reset --hard HEAD~5   表示回到第五行的版本,也就是第一个版本,一但回到从前,就到不了未来了。 现在git log 没有了很多日志, 但是有一个办法可以回到最新修改。 就是只要窗口没有关闭,

找到 9ea25f9cf879103de09a7bc377b83cfe5636463e add line fdfdffd,    git reset --hard 9ea25f9cf879103de09a7bc377b83cfe5636463e   就可以回到未来了。

 git reflog  查看每次reset 和提交的记录

HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。

穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

git checkout -- readme.txt

要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

总之,就是让这个文件回到最近一次git commit或git add时的状态。

现在,看看readme.txt的文件内容:

现在,假设你不但改错了东西,还从暂存区提交到了版本库,怎么办呢?还记得版本回退一节吗?可以回退到上一个版本。不过,这是有条件的,就是你还没有把自己的本地版本库推送到远程。还记得

Git是分布式版本控制系统吗?我们后面会讲到远程版本库,一旦你把“stupid boss”提交推送到远程版本库,你就真的惨了……

git分支

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>

远程仓库:

在自己的机器上创建ssh密钥

$ ssh-keygen -t rsa -C "youremail@example.com"

在自己的虚拟机上生成密钥  ssh-keygen -t rsa -C 'wyl@vcmy.com'

cat id_rsa.pub >> authorized_keys

chmod 660 authorized_keys

添加GIT服务器的hosts   vi /etc/hosts    ###添加controller

添加远程仓库:

git add origin origin root@controller:/opt/git/sample.git

git remote rm controller_origin  ##删除远程仓库

从公司GIT服务器远程GIT下来

git clone root@controller:/opt/git/horizon

做完修改后提交到远程仓库:

 git push wyl_origin master

 

 下载远程仓库代码:

 git clone root@controller:/opt/git/horizon