Git 经常使用命令合集

====== Git 经常使用命令合集 ======





=== 1.Git 文档 ===





    Git 中文文档观看地址:http://git.oschina.net/progit/

    

=== 2.Git 基本指令 ===





    git config --global user.name //设置全局username,不加gloabl为局部

    git config --global user.email //设置全局用户邮箱。

    git --bare init                //初始化git 不生成.git文件夹,没有工作空间(work tree)。

远程仓库初始化时使用。

git init                        //初始化git,生成.git文件夹

    cat .gitignore                //依据规则配置忽略跟踪文件。

    git clone url                //从url路径克隆项目到本地仓库。

    git status                        //查看工作文件夹下文件状态。

    git add file                //将文件或者路径加入到暂存区。

    git reset HEAD file                //将文件撤出暂存区。

    git checkout --file        //取消对文件的改动。

    git rm file                        //删 除文件 -cached 不删除本地文件  -f强制删除

    git diff                        //查看改动文件和暂存区文件的差异  -staged //暂存文件与上次提交的差异。

    git commit -am “txt”        //将暂存区的和已改动的文件提交进仓库txt为记录。

git log                        //查看提交历史 可通过gitg查看。

git fetch pd                //从远程仓pd库抓取数据到本地git pull。

    git push pd master                //将本地master分支推向pd远程仓库。

git push [远程仓库名][本地分支]:[远程分支]

    /××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

    假设远程仓库不是bare init的情况下,当本地仓库push远程仓库所在分支时结果

    不会对应在work tree上。假设远程仓库不在push的分支上则能够。(远程仓库不

    须要work tree)

    ×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××/

  

=== 3.Git remote 指令 ===









    git remote -v                //查看当前远程仓库的名字和地址的信息列表。

    git remote show wepu        //查看远程仓库wepu的信息

    git remote add test url        //加入名为test的远程仓库。

    git remote rename pd paul        //将远程仓库pd名字改为paul

    git remote rm paul                //移除远程仓库paul

  

=== 4.Git branch 指令 ===









    分支是从某个提交对象往回看的历史,本质是指向commit对象的可变指针(HEAD)。每次提交会自己主动向前。

git branch                //查看当前仓库分支  

    git branch -v        //添加显示最后一个提交对象的信息

    git branch -a        //查看远程仓库分支

    git checkout -b A        //创建并指向A分支 = git branch A + git checkout A

    git branch -d A        //删除A分支

    git push pd :A        //删除远程仓库上的分支A ,省略本地分支具体格式见基本指令

    git merge A                //把A分支合并入当前分支,形成一次新的提交。当两个分支都对某个文件同样行改动数据

                                  须要工解冲突 。

解决完之后运行add和commit

    git rebase A        //把A分支合并入当前分支,形成一次新的提交当两个分支都对某个文件同样行改动数据需

                                  要人工解冲突。解决完之后add.rebase –continue

    git rebase –onto master A B //取出B分支,找出B和A分支的共同祖先之后的变化,以master为基地分支进行rebase

    git cherry pick commitID    //将别的分支的提交放在当前分支。先git log确认想要移动提交对象的commitID

    git stash                   //搁置当前全部的修改。先git add.将全部的修改增加暂存区,然后git stash save "detial"

                                  这时工作平台就回到修改前的版本号了。如须要恢复:git stash apply

     /××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

     rebase:假设分支中的提交对象已经公布到公共仓库,新手最好不要对该分支进行

     rebase操作。由于rebase会抛弃一些现有的提交对象,然后创造出不同的新的提

     交对象。

同步代码后可能会出现混乱

    ×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××/

上一篇:【转】Vim命令合集


下一篇:51nod1185(wythoff+高精度)