天天看点

git日常使用

 1.安装Git 

yum install git git-daemon

2.生成SSH公钥

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

测试登陆 ssh localhost:

  $ ssh localhost

  正常情况下会登陆成功

调试步骤

  配置登陆失败了,按照以上步骤依旧提示要输入密码。用ssh -v 显示详细的登陆信息查找原因:

  $ ssh -v localhost

修改文件authorized_keys的权限

  $ chmod 600 ~/.ssh/authorized_keys

3.创建Git用户

useradd git

passwd git

4.初始化仓库

$ cd /home/git/

$ mkdir project.git

$ chown git:git /home/git

$ cd project.git

$ git --bare init

5.在工作机上提交首个文件

cd myproject

git init

touch README

git add .

git commit -m 'initial commit'

git remote add origin [email protected]:/home/git/project.git

git push origin master

6.在某目录克隆项目

cd /home/gittest

git clone git://[email protected]:/home/git/project.git

GIT常用命令

初始化:

添加当前目录所有内容:

查看状态:

git status

添加commit:

git commit -am "first commit."

版本对比:

git diff

查看历史记录:

git log

看一下每一次版本的大致变动情况,可以使用

git log –stat –summary

用git show命令查看

$ git show dfb02e6e4f2f7b573337763e5c0013802e39281

此方法可能使用的时候感觉特别的麻烦,其实可以用另外一种方便的方法.

$ git show dfb02 # 一般只使用版本号的前几个字符即可

$ git show HEAD # 显示当前分支的最新版本的更新细

分支操作

查看分支:$ git branch

创建分支:$ git branch 分支名称 (注意:请不要在服务端建立分支)

切换分支:$ git checkout 分支名称

删除分支:$ git branch -d 分支名称

加入服务器

git remote add 用户名@计算机名或IP:~/某个目录

推送数据

git push master master #本地master推送到远端master

如果想快捷的使用git push就推送到默认远端分支master,可以做个一次性设置:

git remote add origin <实际的ssl用户名>@<IP地址>:<Git在远端的path>

做完以上设置,以后直接使用git push 就会自动推送到上述设置地址了,但如果要推送到其他分支,还是需要加参数的,这个设置只是相当于一个默认参数而已。

接收数据

git pull origin master

如果想直接使用git pull直接接收,同样需要提前做一个一次性设置(同样也是不能应用多分支pull情况):

git branch --set-upstream master origin/master

本地库设置个人姓名和邮件

git config --global user.name "你的姓名,最好由没有符合和空格的英文字母组成"

git config --global user.email <邮件名>@<邮箱服务商后缀>

如果不设置个人信息,提交的信息将不会有更改者信息,这样会加大项目管理的难度。

#回退所有内容到上一个版本  

git reset HEAD^  

#回退a.py这个文件的版本到上一个版本  

git reset HEAD^ a.py  

#向前回退到第3个版本  

git reset –soft HEAD~3  

#将本地的状态回退到和远程的一样  

git reset –hard origin/master  

#回退到某个版本  

git reset 057d  

#回退到上一次提交的状态,按照某一次的commit完全反向的进行一次commit  

git revert HEAD  

#新建old_master分支做备份  

git branch old_master  

#push到远程  

git push origin old_master:old_master 

#本地仓库回退到某个版本  

git reset –hard bae168  

#删除远程的master分支  

git push origin :master  

#重新创建master分支  

推送文件

cd /data/hometest

git add –A .

git commit –m “test”

更新文件

cd /home/data/home/test

git pull

签出版本

git checkout -f

本文转自 ppabc  51CTO博客,原文链接:http://blog.51cto.com/ppabc/1004914