Git 学习笔记

Git 学习笔记
1. 创建版本库
    git init 将当前目录变为Git可管理的仓库

2. 版本库操作
    git add readme.txt 将readme.txt文件添加到版本库中,或者将修改过的文件添加到版本库
    git commit -m "Wrote a readme file"

    1. commit后面的 -m 输入的是本次提交的说明,说明修改的内容
    2. Git添加一个文件需要两步,add,commit。
        即可以多次add,分多次添加多个文件。提交的话可以一次将之前所有的添加文件的动作都提交上。

    git status  用于查看当前的版本库的状态,那些文件被修改。

    git diff    查看相对于之前的文件,新修改了那些内容

    git log 查看一个版本库的修改历史
        --pretty=online 可以将修改信息  以每一条显示一行信息的形式列出
        --graph   命令可以看到分支合并图
        
git reset --hard HEAD^  将版本回退到上一次提交
        HEAD 表示当前版本,^表示向后推一个版本,那么向后推两个版本就是 HEAD^^
            回退100个版本怎么办?HEAD~100
            
        --hard  
        
    git reflog  用于显示历史的所有的修改版本号(commit id)以及对应的提交的修改 日志
    
    git checkout -- readme.txt  丢弃工作区中的修改(注意是工作区,不是暂存区)
        注意这个命令让文件恢复到了最近一次的git commit 或git add执行后的状态
        
    git reset HEAD readme.txt   撤销(unstage)掉暂存区中add 的修改
    
    git rm test.txt  从版本库中删除 test.txt文件,
        使用 git commit 提交删除动作
        
        git checkout -- test.txt 用版本库中的版本替换工作区中的版本。即恢复删除
    
3. 远程仓库
    
    Git仓库 和GitHub仓库之间是通过SSH加密传输的,第一次需要设置SSH Key:
    ssh-keygen -t rsa -C "xiao_0429@126.com"
    
    登录GitHub,从Account settings中设置 SSH Keys。Add SSH Key,填写Title粘贴本地生成的 id_rsa.pub文件内容
    
    每个SSH Key对应一台电脑,多个电脑要各自生成 SSH Key,并添加到GitHub中。
    
    在github上建立版本仓库后,可以将本地库关联到远端的GitHub服务器上的版本仓库。
    git remote add origin https://github.com/xiao0429/learngit.git  将本地版本库关联到远端仓库
    
    git push -u origin master  将本地库的所有内容推送到远程库。第一次使用。
        -u 参数将本地库与远程库 origin 关联起来
        
    origin 是远程库的名字,Git默认的叫法,也可以改成别的名字。
    git push 命令将当前分支 master推送到远程
    
    再次修改代码,使用
    git push origin master 推送最新内容到远程库中
    
    git clone https://github.com/xiao0429/Practice.git  将远端的库克隆到本地
    
4. 分支管理
    git checkout -b dev     用于创建dev分支,并且还到dev分支
        -b 参数表示创建并切换分支
        git branch dev      创建dev分支
        git checkout dev    切换分支到dev
        
    git branch      查看所有分支,当前分支用* 标注
        切换分支后,在Bash中的目录名 最后会给出分支名称,比如 Administrator@guotao-D1 MINGW32 /d/GithubSource/learngit (dev)
    
        git branch -d dev   删除dev分支
        git branch -D dev   强行删除dev 分支
    
    git checkout dev        切换到dev分支,使用该命令实现多个分支之间切换
    
    git merge dev           合并指定分支到当前分支。注意是指定分支到当前分支。也即要切换到要合并“到”的分支
        合并后有冲突,则将文件重新编辑后,再次 add / commit 
        --no-ff  以普通方式合并,合并后可以从log中看到分支合并历史
        而fast forward 合并无法从log历史中看出合并过分支
        
    git stash  将当前的工作现场隐藏起来,等以后恢复后可以继续使用
        执行该命令之后,git status 看到的当前分支应该是干净的
        
        git stash list  查看保存的历史记录,
        git stash apply 恢复现场
        git stash drop  删除保存的一个stash 分支
        
        git stash pop   恢复工作区的同时,也将 stash的内容删除
        git stash apply stash@{0}  用来恢复stash list中保存的第0个 stash
    
    git remote 查看远程库的分支信息
        git remote -v   查看远程库的详细信息
        
    git push origin master 将当前的master分支推送到远端origin 分支
        git push origin dev 将本地的dev分支推送到远端origin 分支
        
    git branch 对于他人从远程库中,只能看到master分支,如果要开发dev分支,需要将远程dev分支创建到本地
    
    git branch -b dev origin/dev  将远程库中origin库中dev分支创建到本地
        此时如果冲突了,则 git pull 将远程分支拉下来,合并,解决冲突,再推送远程库
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值