git学习笔记

来源:互联网 发布:守望先锋添加数据索引 编辑:程序博客网 时间:2024/06/01 09:21
一、首先配置自已的git
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
二、常用命令
git commit --amend 撤销最近一次的修改
git fetch [remote-name] 从远程仓库中抓取数据
git push [remote-name] [branch-name] 将数据推送到远程的某个分支
git remote add [shortname] [url]  //远程添加一个分支
git remote show [remote-name]
三、建立新的分支
git branch pan //新建分支pan
git checkout pan  //切到pan分支 此时HEAD指向的是pan  master指向的是建立分支之前的commit指针
git checkout -b pan //新建并切换到分支pan
git merge pan
git branch -d pan //当某个分支问题解决了以后,就可以删除这个分支了
git merge master //在某个分支上将master中的内容合并过来

git branch --merged//查看已经合并的分支
git branch --no-merged //查看没有合并的分支

git mergetool//调用解决合并冲突的工具

git fetch origin //来同步远程服务器上的数据到本地

git push (远程仓库名) (分支名) //推送本地分支,这个是推送到远程的同名分支
git push origin serverfix:awesomebranc//推送到远程的其他的分支

删除远程分支develop:
git push origin --delete develop
git branch -a  查看所有的分支,包括本地和远程的
git branch -r   查看远程分支

git fetch origin dev-pan取回远程的某个分支,所取回的更新,在本地主机上要用"远程主机名/分支名"的形式读取。比如origin主机的master,就要用origin/master读取。
git merge origin/dev-pan 在某个分支上把刚才取回的运程分支合并到现在的某个分支
建立裸仓,两种方法
一、将本地的导出为裸仓
git clone --bare my_project my_project.git  //my_project这个仓已经存在了
scp -r my_project.git user@git.example.com:/opt/git //将裸仓移到服务器上
git init --bare --shared //如果对服务器上裸仓没有权限 此命令用于获得权限
git clone root@120.24.72.202:/home/my_project/my_project.git  //将裸仓中的内容复制出来

二、直接建立裸仓(里面无内容)
cd /opt/git
    $ mkdir project.git
    $ cd project.git
    $ git --bare init
 $ cd myproject
    $ git init
    $ git add .
    $ git commit -m 'initial commit'
    $ git remote add origin git@gitserver:/opt/git/project.git
    $ git push origin master
其他人的克隆和推送也一样变得很简单:
$ git clone git@gitserver:/opt/git/project.git
    $ vim README
    $ git commit -am 'fix for the README file'
    $ git push origin master

0 0