zoukankan      html  css  js  c++  java
  • git 笔记

    版本库
    1.repository
    在一个合适的地方,创建一个空目录
    $ mkdir learngit
    $ cd learngit
    $ pwd
    /User/leon/learngit
     
    pwd命令用于显示当前的目录,在我的电脑上,这个仓库位于/user/michael/learngit
     
     
    2.git init 将当前目录变成git 可以管理的仓库。
    $ git init
    Initialized empty Git repository in /Users/michael/learngit/.git/
    Git就把仓库建好了,而且告诉你是一个空的仓库(empty Git repository),细心的读者可以发现当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了
     
    3. 添加文件到git仓库,总共分两步
      3.1 git add <file>,注意可以反复使用,添加多个文件。
      3.2 使用git commit命令
      其中,git commit命令,-m后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录
      不输入这个也可以,但是强烈不建议这样做。  
      add 每次提交一个文件,add可以多次add不同的文件。
     
    4. git status 掌握工作区的状态
    git status告诉你有文件修改过,git diff 可以查看修改的内容。
    修改文件和提交新文件一样步骤,
     
    5.git log 显示从近到最远的提交日志,我们可以看到三次提交,最近的一次是 append GPL,上一次是add dist
     
    6.版本回退,git reset - -hard 123456
    版本号会模糊查找,
    git reflow 记录一次命令,可以在关机之后 查找到那个
     
    7.git 记录的是修改而不是文件
    每次修改都是先 add 到暂存区,之后再commit 
     
    8.撤销修改
    git checkout 会撤销修改。git checkout - - test.txt 文件在工作区的修改全部撤销。
    两种情况:1)text.txt 修改后还没有放到暂存区,
    2)test.txt 已经添加到暂存区,又做了修改,撤销修改就回到了添加到暂存区后的状态。
    文件回到最后一次的 git commit 或者 git add 时候的状态。
     
    需要注意的是 git checkout 中的 - - 很重要。缺了就编程切换到另一个分支
     
    小结:
    1.当你改乱了工作区的某个文件的内容,想直接丢弃工作区的修改的时候,用git checkout — file
    2.不但改乱了工作区的某个文件,还添加到了暂存区的时候,想丢弃修改,
      2.1 get reset HEAD file 回到了场景1,第二步按照场景1来操作。  
    3.已经提交了不合适的修改到版本库的时候,想要撤销本次提交,参考版本 6 版本回退,不过前提是没有推送到远程库
     
     
    9.删除文件
    $ rm test.txt 就是用命令行删除本地工作区的文件,或者直接自己删除
    这时候用 git status 可以看到你哪些文件被删除
    现在有两个选择,
      1)从版本库中删除,git rm  之后 git commit
    $ git rm test.txt
    rm 'test.txt'
    $ git commit -m "remove test.txt"
    [master d17efd8] remove test.txt
     1 file changed, 1 deletion(-)
     delete mode 100644 test.txt
      这样文件就从版本库中删除了
      2)如果你删除错了,git checkout - - text.txt
    小结:
    其实, git checkout 就是用版本库里的版本替换工作区的版本,任何情况都可以一键还原
    git rm用于删除一个文件,如果一个文件已经被提交到版本库,那么不需要担心误删除,
    需要注意的是你只能回复文件到最新的版本
     
     
  • 相关阅读:
    LOGO生成器
    【转】 iOS开发:Debug与Release版本NSLog屏蔽方法
    【转】IOS调试技巧:当程序崩溃的时候怎么办 iphone IOS
    【转】 Objective C实现多继承
    NSArray
    记一次 ios程序 内存优化记录LOG日志
    【转】[iOS] 关于 self = [super init];
    NSMutableArray
    Xcode调试利器 Instruments用户指南
    一段代码展现一个流程,流程在代码中内聚
  • 原文地址:https://www.cnblogs.com/helloLeon/p/5663225.html
Copyright © 2011-2022 走看看