您的位置:首页 > 其它

Git 分布式版本控制系统 基本命令行操作

2017-10-22 15:24 267 查看
Git:分布式版本控制系统 (CVS及SVN都是集中式的版本控制系统)
 参考地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/
1.windows下安装
  $ git config --global user.name "YourName"
  $ git config --global user.email"email@example.com"
 
2.创建版本库
 
   a. 初始化仓库:git init
   b. 添加文件到仓库:(1) git add file : 添加到暂存区 .
                      (2) git commit -m"文档说明" :提交到分支
                      (3) 有多次修改:第一次修改 -> git add -> 第二次修改 -> git add  git commit
 
3. 查看工作区状态:git status
 
4. 查看修改内容: git diff HEAD -- file
 
5. 版本回退
     
     a: 回到指定版本:git reset --hard commit_id (HEAD:当前版本 HEAD^:上个版本 HEAD~100)
     b:查看提交历史:git log
     c: 查看命令历史:git reflog
     d: 查看文件内容:cat file
 
6.撤销修改
  
    a:丢弃工作区的修改 :git checkout -- file
    b:把暂存区的修改回退到工作区:git reset HEAD file
    c:提交到版本库的修改:直接版本回退
 
7.删除文件
    a: 删除:rm file
    b:从版本管理器删除:git rm file
    c: 回复文件到最新版本:git checkout -- file
8.添加远程库
     a:关联远程库:git remote add origingit@github.com:chenzhijie521143/gitdemo.git
     b:第一次推送master分支的所有内容:git push -u origin master
     c:推送最新修改: git push origin master
9.从远程库克隆
     两种地址
        Git clone  https://github.com/chenzhijie521143/musicplayer.git   /  git@github.com:chenzhijie521143/gitdemo.git
 
10.分支管理
 
   查看分支:git branch
   创建分支:git branch <name>
   切换分支:git checkout <name>
   创建+切换分支:git checkout -b <name>
   合并某分支到当前分支:git merge <name> (快速合并)
   普通合并: git merge --no-ff -m"chenzhijie" chenzhijie
   删除分支:git branch -d <name>
   强行删除没有合并的分支:git branch -D <name>
   查看分支历史:git log --graph --pretty=oneline --abbrev-commit
  
   bug分支:修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;
            git stash(储存当前工作现场),然后去修复bug,修复后,再git stash pop(git stash apply),回到工作现 场。
  
   多人协作:
         查看远程库信息,使用git remote -v;
         本地新建的分支如果不推送到远程,对其他人就是不可见的;
         从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;
         在本地创建和远程分支对应的分支,使用git checkout -b branch-nameorigin/branch-name,本地和远程分支的名称最好一致;
         建立本地分支和远程分支的关联,使用git branch --set-upstream branch-nameorigin/branch-name;
         从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。
11.标签:
  
   创建标签:
   命令git tag <name>用于新建一个标签,默认为HEAD,也可以指定一个commit id;
   git tag -a <tagname> -m"blablabla..."可以指定标签信息;
   git tag -s <tagname> -m"blablabla..."可以用PGP签名标签;
   命令git tag可以查看所有标签。
  
   操作标签:
   命令git push origin <tagname>可以推送一个本地标签;
   命令git push origin --tags可以推送全部未推送过的本地标签;
   命令git tag -d <tagname>可以删除一个本地标签;
   命令git push origin :refs/tags/<tagname>可以删除一个远程标签
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: