初始化仓库

$ cd /home/user/my_project
$ git init
创建一个.git的子目录
如果在一个已存在的文件夹进行版本控制
  $ git add .
  或者$git add xxx
  $ git coment -m “ ”

查看状态

$ git status //命令查看哪些文件处于什么状态

提交代码

$ git branch
$ git status
$ git add xxx
$ git status
$ git log
$ git coment -m “ ”
$ git push 

pull和push

$ git pull  //将远程git服务器的内容拉到本地版本库
$ git push   //如果项目允许直接向git仓库push,直接push到对应的远程分支

日志

$ git log   //显示日志
$ git log -p  //按补丁格式显示修订内容
$ git log -n 仅显示最近n条提交
$ git log --stat  //包含每次提交的增删行数统计
     --name -status  //显示新增、修改、删除的文件清单
     --pretty  //使用其他格式显示历史提交信息

比较暂存区

git diff  //比较工作区和暂存区
      --cached //比较暂存区和版本库
git blame xxx  //查看文件追朔

git show -ref //查看本地引用
git ls -remote  //查看远程引用
           --heads   //查看heads

修改文件

git add. //修改文件,将当前目录下所有更新的内容添加到暂存区
git commit -m “ ” 提交修改到本地

git mv  //重命名
git commit -m “rename”
git add -i   //选择添加

查看

git ls -tree -1 HEAD   //查看版本目录树
git ls -file -s  //查看暂存区目录树
git write -tree  //将暂存木目录写入版本库

git stash  //保存进度
git stash list   //查看进度
       pop  //恢复最新保存的进度,从进度列表中删除
       apply    //不会删除
       drop   //删除最新进度

删除


rm   //删除文件
git rm
git commit -m “ ”  //提交到版本库
git rm --cached xxx  //只从暂存区删除,保留工作区
git rebase --onto <xxx> <x> <xx>  //将<x>到<xx>的提交嫁接到<xxx> 拣选提交
git revert HEAD  //反转提交


git clean  //清除工作区未跟踪内容
        -nd  //预览删除
        -fd   //执行删除
git reset    //重置
git checkout    //检出某个分支


git fetch origin   //更新远程分支索引到本地
git feflog   //查看分支操作记录
git remote -v   //显示远程版本库

远程命令

//下载远程仓库的所有变动
$ git fetch [remote]

 //显示所有远程仓库
$ git remote -v

//显示某个远程仓库的信息
$ git remote show [remote]

//增加一个新的远程仓库,并命名
$ git remote add [shortname] [url]

// 取回远程仓库的变化,并与本地分支合并
$ git pull [remote] [branch]

 //上传本地指定分支到远程仓库
$ git push [remote] [branch]

//推送所有分支到远程仓库
$ git push [remote] --all

撤销

# 恢复暂存区的指定文件到工作区
$ git checkout [file]

# 恢复某个commit的指定文件到暂存区和工作区
$ git checkout [commit] [file]

# 恢复暂存区的所有文件到工作区
$ git checkout .

# 重置暂存区的指定文件,与上一次commit保持一致,但工作区不变
$ git reset [file]

# 重置暂存区与工作区,与上一次commit保持一致
$ git reset --hard

# 重置当前分支的指针为指定commit,同时重置暂存区,但工作区不变
$ git reset [commit]

# 重置当前分支的HEAD为指定commit,同时重置暂存区和工作区,与指定commit一致
$ git reset --hard [commit]

# 重置当前HEAD为指定commit,但保持暂存区和工作区不变
$ git reset --keep [commit]

# 新建一个commit,用来撤销指定commit
# 后者的所有变化都将被前者抵消,并且应用到当前分支
$ git revert [commit]

# 暂时将未提交的变化移除,稍后再移入
$ git stash
$ git stash pop

恢复删除文件

git reset HEAD xxx
git checkout xxx

比较差异

$ git status
$ git diff

仓库命令

检出仓库:git clone git://github.com/jquery/jquery.git
查看远程仓库:git remote -v
添加远程仓库 git remote add name url
 删除 git remote rm name
修改 git remote set-url --push name newurl
拉取 git pull remotename localbranchname 
推送 git push  remotename localbranchname 
git push origin test:master         // 提交本地test分支作为远程的master分支

分支命令

查看本地分支: git branch
查看远程分支: git branch -r
创建本地分支: git branch name ----注意新分支创建后不会自动切换为当前分支
切换分支:git checkout name
创建新分支并立即切换到新分支:git checkout -b name
删除分支:git branch -d name
合并分支: git merge name ----将名称为name的分支与当前分支合并
创建远程分支(本地分支push到远程): git push origin name
删除远程分支: git push origin :heads/name 或  gitpush origin :name
查看每一个分支的最后一次提交:git branch -v 
查看哪些分支已经合并到当前分支: git branch --merged

初始化git

$ git config --global user.name "xxx"
$ git config --global user.email xxxxx
想要检查你的配置,可以使用 git config --list 命令来列出所有 Git 当时能找到的配置。
创建密钥
   $ssh-keygen -t rsa 
获取公钥
   $cat ~/.ssh/id_rsa.pub
配置config 
   $vi ~/.ssh/config
host xx.xx.xxx.xxx
user xxx
IdentityFile ~/.ssh/id_rsa
Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐