美文网首页
git的使用

git的使用

作者: 落幕12 | 来源:发表于2021-06-16 21:43 被阅读0次

    git的简单介绍

    1. 使用:使用的是git bash here 使用命令操作
    2. 仓库
      是用来存储代码的一个文件夹,这个文件夹被git工具所管理
      本地仓库;本地计算机上被git管理的文件夹
      远程仓库:远程服务器上被git管理的文件夹
    3. 推送:将本地仓库中的内容上传到远程仓库---push
    4. 拉取(同步):将远程仓库的内容下载到本地一份--让本地仓库和远程仓库保持一致
    5. give.com---git服务器网站 -服务器在国内
    6. GitHub.com --服务器在国外

    本地操作

    本地文件夹如何变成仓库?

    1. 进入该文件夹的目录下
    2. 使用git init

    如何给仓库中存储内容?

    1. 工作区:还没有正式进入仓库,只是即将进入仓库,正在开发的源代码
    2. 暂存区:已经进入仓库了,但是还没有真正放到最终存放的地方,只是临时存放,等待登记造册,已经写好了
    3. 历史区/版本区:已经登机好,可以放到最适合的地方。

    仓库中可以查看仓库的状态

    git status
    
    //标红的文件表示在工作区
    //标绿的文件表示在暂存区
    

    将工作区的内容放在暂存区

    git add 文件名称
    git add .    //表示将所以工作区的内容放到暂存区
    

    将暂存区的内容重新拿回工作区

    git reset HEAD --文件
    git reset HEAD -- .    //表示将所以暂存区的内容拿回工作区
    

    将暂存区的内容放到历史区

    git commit -m "版本描述"
    //当将所以暂存区的内容放到历史区的时候,工作区就是干净的 working tree clean
    

    注意事项:

    1. 不能单独将某一个文件放在历史区,一次性会将所有暂存区的内容放到历史区
    2. 只能将暂存区的内容放到历史区,不能跨步骤(将工作区的内容放到历史)操作

    版本操作

    1. 查看所有版本
    git log
    
    1. 设置名字和邮箱
    git config --global user.name '名字'
    git config --global user.email '邮箱'
    
    1. 回退版本
    git reset --hard HEAD^      //^的个数表示回退几个版本
    

    4.版本跳转

    git reset --hard 版本号     //版本号不用写全,只要有前8位就好
    

    只要是形成过的历史版本,版本号就可以在.git中的隐藏文件中找到

    1. 删除版本

    git rebase - i 版本号
    注意:删除的时候不能指定被删除的版本号,要删除上一个版本号
    执行这个命令,会打开一个文件,要删除成功,需要将打开这个文件的开头单词pick改成drop 后保存并退出。

    两个特殊文件

    1. git在管理文件夹的时候,不能管理空文件夹,为了避免误会发生,让空文件夹被管理,git提供一个专业的管理空文件夹的文件,名字是固定的:gitkeep
    2. 如果某些文件或文件夹不希望被git管理,就可以设置一个黑名单,让这个文件或文件夹被忽略掉,此时git提供了一个文件叫 .gitignore 这个文件就可以设置黑名单 将需要被忽略掉的文件的路径写在这个文件中

    远程操作

    创建仓库的时候,可以选择初始化,也可以选择不初始化

    不初始化:本地代码上传到远程

    在本地创建仓库,放到暂存区,形成历史区
    1) 让本地仓库和远程仓库之间建立连接
    git remote add origin 项目地址
    其中origin是一个变量,可以自定义
    2) 将本地仓库的内容上传到远程仓库
    > git push -u origin master
    需要输入账号密码:注册使用的邮箱及密码
    当再次上传的时候就不需要账号密码了
    下次上传的时候只要git push 就好

    有一段很自豪的代码,要上传到远程,建议使用不初始化

    选择初始化:远程仓库中已经有代码了

    1. 相当于远程仓库中已经有内容了
    2. 必须先将这个仓库本地克隆一份

    git clone 远程仓库地址 [你想要的文件夹名称]

    1. 就在这个文件夹中进行本地操作,要上传到远程。
      git push

    分支操作

    查看所有的分支

    git branch
    每个仓库默认分支是master分支--主分支

    创建分支,默认会将当前分支上内容复制一份到新的分支

    切换分支

    git checkout 分支名

    快速创建新分支并切换到新分支

    git checkout -b 分支名

    合并分支

    冲突

    在项目开发阶段,有两个人同时操作一个仓库,最终总会有一个人先上传,一个人后上传,先上传的能成功,后上传的人不能成功。
    因为在

    GitHub 成功从本地仓库推送到GitHub上

    步骤:
    首先要进入本地文件的文件夹中

    [@yeyuxindeMacBook-Air:hello (master)]$ git init
    Initialized empty Git repository in /Users/yeyuxin/Desktop/hello/.git/
    [@yeyuxindeMacBook-Air:hello (master)]$ git remote add origin https://github.com/syylvia/hello.git
    usage: git remote add [<options>] <name> <url>
    
        -f, --fetch           fetch the remote branches
        --tags                import all tags and associated objects when fetching
                              or do not fetch any tag at all (--no-tags)
        -t, --track <branch>  branch(es) to track
        -m, --master <branch>
                              master branch
        --mirror[=<push|fetch>]
                              set up remote as a mirror to push to or fetch from
    
    [@yeyuxindeMacBook-Air:hello (master)]$ git status
    On branch master
    
    No commits yet
    
    Untracked files:
      (use "git add <file>..." to include in what will be committed)
    
        sybg.cpp
    
    nothing added to commit but untracked files present (use "git add" to track)
     31         void tj(Student stu[]);
    [@yeyuxindeMacBook-Air:hello (master)]$ git add.
    git: 'add.' is not a git command. See 'git --help'.
    
    The most similar command is
        add
    [@yeyuxindeMacBook-Air:hello (master)]$ git add sybg.cpp
    [@yeyuxindeMacBook-Air:hello (master)]$ git commit -m "学生信息管理系统"
    [master (root-commit) 8aae2f1] 学生信息管理系统
     1 file changed, 341 insertions(+)
     create mode 100644 sybg.cpp
    [@yeyuxindeMacBook-Air:hello (master)]$ git remote add origin https://github.com/syylvia/hello.git
    [@yeyuxindeMacBook-Air:hello (master)]$ git push -u origin master
    Counting objects: 3, done.
    Delta compression using up to 4 threads.
    Compressing objects: 100% (2/2), done.
    Writing objects: 100% (3/3), 2.23 KiB | 2.23 MiB/s, done.
    Total 3 (delta 0), reused 0 (delta 0)
    To https://github.com/syylvia/hello.git
     * [new branch]      master -> master
    

    https://blog.csdn.net/weixin_35782626/article/details/112401747

    相关文章

      网友评论

          本文标题:git的使用

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