zoukankan      html  css  js  c++  java
  • git使用

    第一章 初始化

    现在总结一下今天学的两点内容:
    初始化一个Git仓库,使用git init命令。
    添加文件到Git仓库,分两步:
    ● 第一步,使用命令git add <file>,注意,可反复多次使用,添加多个文件;
    ● 第二步,使用命令git commit,完成。
    第二章 查看文件状态
    3. 要随时掌握工作区的状态,使用git status命令。
    4. 如果git status告诉你有文件被修改过,用git diff可以查看修改内容。
    第三章 退回版本
    4. git log可以查看提交历史版本。
    5. 使用命令git reset --hard commit_id。到哪个版本
    6. 用git reflog查看命令历史,git reset --hard commit_id到哪个版本
    第四章 工作区-版本库

     

    现在,你又理解了Git是如何跟踪修改的,每次修改,如果不add到暂存区,那就不会加入到commit中。

    第五章 撤销
    $ git checkout -- readme.txt
    命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:
    一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
    一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
    总之,就是让这个文件回到最近一次git commit或git add时的状态。
    $git reset HEAD file
    既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本。
    还记得如何丢弃工作区的修改吗?
    $ git checkout -- readme.txt

    第六章 恢复文件
    先把文件add和commit到版本库中
    若是在资源管理器中误删了文件只需要git checkout – file


    第七章 ssh key
    第1步: SSH Key:
    $ ssh-keygen -t rsa -C "yousun@cisco.com"
    你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
    如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
    第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:
    然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

    点“Add Key”,你就应该看到已经添加的Key:

    第八章 关联远程
    要关联一个远程库,使用命令
    git remote add origin git@server-name:path/repo-name.git;
    关联后,使用命令
    git push -u origin master第一次推送master分支的所有内容;
    此后,每次本地提交后,只要有必要,就可以使用命令
    git push origin master推送最新修改;
    第九章 clone
    $ git clone git@github.com:michaelliao/gitskills.git
    第十章 创建分支
    查看分支:git branch
    创建+切换分支:git checkout -b <name>
    合并某分支到当前分支:git merge <name>
    删除分支:git branch -d <name>
    第十一章 合并
    $ git merge feature1
    <<<<<<< HEAD
    Creating a new branch is quick & simple.
    =======
    Creating a new branch is quick AND simple.
    >>>>>>> feature1

    Creating a new branch is quick & simple.
    Creating a new branch is quick AND simple.
    第十二章 分支管理
    表示禁用Fast forward:
    $ git merge --no-ff -m "merge with no-ff" dev
    第十三章 Bug分支
    先保存“现场”git stash
    切换到主分支git checkout master
    创建并切换到bug分支 git checkout –b issue-101
    Git add->git commit –m
    切换到主分支master
    Git merge –no-ff –m “”issue-101 –>git branch –d issue-101
    切换到dev分支
    Git stash list--> git stash apply stash@{0}-->git stash drop
    第十四章 Feature分支
    添加新功能,需要新加新分支
    $ git checkout -b feature-vulcan
    $ git add vulcan.py
    $ git commit -m "add feature vulcan
    切回dev,准备合并
    删除feature-vulcan分支
    第十四章 多人协作
    查看远程库信息 git remote –v 或git remote
    推送到远程推送dev分支$ git push origin dev
    -----------------------------------------------
    抓取分支$ git clone git@github.com:michaelliao/learngit.git
    默认情况下,你的小伙伴只能看到本地的master分支
    $ git branch
    * master
    你的小伙伴要在dev分支上开发,就必须创建远程origin的dev分支到本地,
    $ git checkout -b dev origin/dev

    现在,他就可以在dev上继续修改,时不时地把dev分支push到远程:
    $ git commit -m "add /usr/bin/env"
    $ git push origin dev
    此时,你也在push,然后就有冲突
    $ git add hello.py
    $ git push origin dev
    push冲突
    git pull(git pull也失败了,指定本地dev分支与远程origin/dev分支的链接)
    $ git branch --set-upstream dev origin/dev
    在pull(成功但是有冲突手动解决冲突)
    最后 push
    第十五章 标签管理
    先查看cimmit id $ git log --pretty=oneline --abbrev-commit
    git tag v0.1 11fc
    git show v0.1
    若是查看标签 git tag
    删除标签 git tag –d v0.1
    推送标签到远程 git push origin v0.9
    (推送所有的标签$ git push origin --tags)
    删除远程标签
    Git tag –d v0.9
    Git push origin :refs/tags/v0.9
    第十六章 综合练习

    删除远程分支git push origin :branch-name
    提交所有修改$ git add .

    从git add状态退回到工作区的状态 git checktout

    4.1开放模式负责设置过滤哪些文件和文件夹

    过滤文件夹设置:

    /mtk/ 表示过滤这个文件夹

    过滤文件设置:

    指定过滤某种类型的文件:

    *.zip

    指定过滤某个文件:

    /mtk/if.h

    4.2保守模式负责设置哪些文件不被过滤,也就是哪些文件要被跟踪。

    跟踪某个文件夹

    !/plutommi/mmi

    跟踪某类文件

    !*.h

    跟踪某个指定文件

    !/plutommi/mmi/mmi_features.h

  • 相关阅读:
    挺有意思的HBase日志+Splunk
    eclipse连接远程hadoop集群开发时权限不足问题解决方案
    auxiliary variable(辅助变量)的引入
    auxiliary variable(辅助变量)的引入
    十万个为什么 —— 自然的好奇
    十万个为什么 —— 自然的好奇
    高级鸡汤
    高级鸡汤
    protobuf反射详解
    思想实验(逻辑思维)解题
  • 原文地址:https://www.cnblogs.com/jingtyu/p/7541704.html
Copyright © 2011-2022 走看看