对git和GitHub理解

396 阅读2分钟

git是分布式版本控制系统,是一个软件。 具有两大功能:版本控制 多人协助。
流程如下:
1.初始化一个Git仓库(Git init)

  • 这个仓库会存放,git对我们项目代码进行备份的文件
  • 在项目目录右键打开 git bash
  • 命令: git init

2.设置用户名和邮箱(git config --global user.name)(git config --global user.email)
3.添加文件到仓库(git add 文件名1 文件名2)
4.提交(git commit -m "对添加的东西进行说明")
--all 表示是把所有修改的文件提交到版本库
5.查看版本 (git log)
6.回退(git reset -hard HEAD^/commit_id)
回退到指定的版本

  • git reset --hard Head~0
    • 表示回退到上一次代码提交时的状态
  • git reset --hard Head~1
    • 表示回退到上上次代码提交时的状态
  • git reset --hard [版本号]
    • 可以通过版本号精确的回退到某一次提交时的状态
  • git reflog
    • 可以看到每一次切换版本的记录:可以看到所有提交的版本号

查看当前的状态

  • 可以用来查看当前代码有没有被放到仓储中去
  • 命令: git status

git中的忽略文件

  • .gitignore,在这个文件中可以设置要被忽略的文件或者目录。
  • 被忽略的文件不会被提交仓储里去.
  • 在.gitignore中可以书写要被忽略的文件的路径,以/开头, 一行写一个路径,这些路径所对应的文件都会被忽略, 不会被提交到仓储中
  • 写法 * /.idea 会忽略.idea文件 * /js 会忽略js目录里的所有文件 * /js/*.js 会忽略js目录下所有js文件

GitHub

  • github.com
  • 不是git,只是一个网站
  • 只不过这个网站提供了允许别通过git上传代码的功能

提交代码到github(当作git服务器来用)

  • git push [地址] master
  • 示例: git push https://github.com/huoqishi/test112.git master master
  • 会把当前分支的内容上传到远程的master分支上
  • git pull [地址] master
  • 示例: git pull https://github.com/huoqishi/test112.git master
  • 会把远程分支的数据得到:(注意本地-要初始一个仓储!)
  • git clone [地址]
  • 会得到远程仓储相同的数据,如果多次执行会覆盖本地内容。

ssh方式上传代码

  • 生成公钥,和私钥 ssh-keygen -t rsa -C "3287308097@163.com"

在push和pull操作进

  • 先pull , 再push
  • 当我们在push时,加上-u参数,那么在下一次push时 我们只需要写上git push就能上传我们的代码。(加上-u之后,git会把 当前分支与远程的指定的分支进行关联。git push origin master)