git笔记初步

作者: openoter | 来源:发表于2016-12-22 17:30 被阅读52次

    git笔记初步

    1. linux命令

    ls # 列出文件夹下的目录和文件
    ls -a # 列出全部的文件,连同隐藏文件
    ls -l # 列出长数据串,包含文件的属性与权限数据
    cd 文件夹 #进入指定的目录
    cd .. # 返回上一级
    mkdir 文件夹名 # 创建一个文件夹'
    pwd # 返回当前所在路径
    rm t.txt # 删除t.txt文件
    rm 文件夹名 -r # 删除www文件夹(递归删除)
    rmdir 文件夹名 #删除文件夹
    touch filename1 filename2 # 创建多个文件
    

    使用vi编辑器创建文件

    vi index.html
    

    vi编辑器简单操作:

    i,进入编辑模式(输入内容)按esc;

    退出编辑模式到命令模式按shift+:;

    再输入wq保存并退出(编辑模式)。

    git命令

    # 配置git
    git config --list # 查看git配置
    git config --global --list # 查看git全局配置
    git config --global user.email "邮箱"
    git config --global user.user "用户名"
    git init # 初始化git仓库(initialization)
    git add 文件夹、文件名 # 把文件夹、文件名添加到本地仓库
    git add . # 添加当前目录下的所有文件到仓库
    git status # 查看文件状态
    git log # 查看提交历史
    git log -p [-num] # 查看近[num次]提交的历史,并对比差异
    git log --stat #显示简要的增改行统计数
    git commit -m "comment" # 提交到本地仓库
    git commit --amend # 修改提交的注释内容
    git diff # 查看所有修改的内容
    git diff file_name # 查看file_name文件修改的内容# 回到上一个版本
    git reset --hard HEAD^ # 退回到上一个版本
    git reset --hard id # 退回到未来的某个版本
    git reflog 
    

    把项目中的文件提交到本地仓库:

    • 添加需要提交的文件(git add [dfg])
    • 提交文件(git commit -m "comment")

    添加到远程仓库

    # 添加远程仓库
    
    ## 添加后远程仓库的名字叫“origin”,也可以叫其他的,但是一般都会叫origin
    git remote add origin https://github.com/openexw/lear.git# 由于远程库是空的,第一次push时加上-u参数,git会把本地master分支推送到远程,# 还会把本地的master分支与远程的master分支关联起来,以简化下一次推送
    git push -u origin master 
    git push # 当前分支master推送到远程
    

    修改远程仓库地址

    git remote show # 查看远程仓库的名称
    git remote show [origin] # 查看远程仓库origin的详细信息
    git remote rm origin # 删除远程仓库地址
    git remote add origin https://github.com/openexw/lear.git # 添加远程仓库
    

    github ssk key配置

    ssh-keygen -t rsa -C "your_email@example.com"## 连续回车
    cd ~/.ssh # 进入生产ssh的目录
    pwd # 查看当前路径
    
    • 打开ssh生的路径;
    • 使用文本编辑器打开id_rsa.pub,并复制文件中的内容;
    • 打开https://github.com,并找到settings选项(注意是你的账号的settings);
    • 选择SSH and GPG keys,并选择New SSH key按钮;
    • 将刚才复制的内容复制到key中;
    • 最后点击Add SSH key按钮。

    分支

    理解分支

    分支其实就是从某个提交对象往回看的历史。默认为master

    何时该使用分支

    • 试验性修改:测试新的算法或者为某个特别的模式重构部分代码
    • 团队协作
    • 增加新功能:为每个新功能的开发创建新的分支,完成该功能开发后,在将其合并到主分支上
    • Bug修改:修复代码中的bug,可以创建新分支来对该bug进行修改,然后将修改合并到主分支上
    • ......

    分支相关的命令

    # 查看分支
    git branch# 创建分支
    git branch testing# 切换到testing分支
    git checkout testing# 创建并切换到该分支
    git checkout -b v.01
    
    # 合并分支
    ## 将testing分支合并到master分支
    git checkout mastergit merge testing# 删除分支## 删除本地分支
    git branch -d testing #删除名为testing的分支## 删除远程分支
    git branch -r -d origin/study  #study表示远分支名字
    git push origin :study
    

    Note:

    • 如果合并分支时产生冲突,git也不知道该如何是好,这时就需要你手动修改代码了。
    • 因为创建、合并和删除分支非常快,所以Git鼓励你使用分支完成某个任务,合并后再删掉分支,这和直接在master分支上工作效果是一样的,但过程更安全。

    标签

    发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本。标签也是版本库的一个快照。

    创建标签

    git tag v.0.1
    
    # 给指定的com id打上标签
    git tag v.0.9 63c1e36
    

    查看所有的标签

    git tag
    

    操作标签

    # 删除标签
    git tag -d v.0.1
    
    # 推送某个标签到远程
    git push origin v.0.1
    # 推送全部尚未推送的到远程服务器上的本地标签
    git push origin --tags
    
    # 获取指定标签的代码
    git checkout tag_name 
    
    # 删除远程标签(已经推送到远程上了)
    ## 1. 删除本地标签
    git tag -d v.0.1
    ##  2. 删除远程标签
    git push origin :refs/tags/v.0.1
    

    自定义git

    忽略特殊文件

    在git工作区的根目录下创建一个特殊的.gitignore文件,然后把忽略的文件名填进去。配置文件可以不用自己写,github给我们写好了 .gitignore
    忽略文件的原则:

    • 忽略操作系统自动生成的文件,比如缩略图等;
    • 忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库,比如Java编译产生的.class文件;
    • 忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件。```.gitignore
      .idea/
      index.php
      *.ini

    相关文章

      网友评论

        本文标题:git笔记初步

        本文链接:https://www.haomeiwen.com/subject/aglhvttx.html