Git入门基本操作

蹲街弑〆低调 提交于 2020-01-11 06:53:12

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。为了有效管理代码,同时方便同一个项目存在多人开发的情况,使用git分布式控制和管理代码的方式,同一个Git仓库可以分布到不同的机器上,通过这种分布式的管理方式,保证了代码的安全性也让代码的管理变得十分简便。

创建github并进行本地关联

  1. 在使用时git之前使用邮箱再github注册账户,由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要设置SSH密钥。

  2. 创建SSH Key。在用户主目录下,查看是否讯在.ssh目录,如果有,再查看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:

    $ ssh-keygen -t rsa -C “youremail@example.com”
    如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

  3. 接下来需要把本地的SSH Keys添加到github账户中,登陆GitHub,打开“Account settings”,“SSH Keys”页面:点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:
    在这里插入图片描述
    GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送

github上传命令

Git初始设定
	建立一个Git库
	$ git init
	设置基础信息
	$ git config -l	//git当前设置
	$ git config --global user.name “Alan” //修改或添加名称
	$ git config --global user.email “zhaialan@sina.com”//修改或添加邮箱
	$ git config --global color.ui true //mac版本git字段高亮显示
	$ git config -l
 
	方便命令
	$ git config --help
	$ git help config



#建立本地Git库
$ git init
#编辑(修改)本地文件
$ vim myweb.html
...
...
#本地工作文件夹状态确认
$ git status
$ git add myweb.html
#本地工作文件夹状态再次确认
$ git status
#将索引区内容提交本地库
$ git commit -m "created myweb.html"
#查看提交历史
$ git log

查看提交履历
$ git log
$ nano myweb.html
...
...
$ git add myweb.html
$ git commit -m "added code."
$ git log
$ git log --oneline //一行显示
$ git log -p	//详细显示
$ git log --stat	//每次提交信息统计
$ git log --help

(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)

$ git add myweb.html
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)
 
	modified:   myweb.html
$ git reset HEAD myweb.html //撤回(到本地仓库)已经添加到索引去的文件
$ git checkout -- myweb.html	//本地撤销修改
$ git status
#工作文件夹比较
$ git diff

•	git add [file1 file2 ...]
•	git add .   添加目录下所有文件
•	git rm	删除文件
•	git mv	修改文件名称

知识点
	•	git commit -m "commit message" // 提交并添加备注信息
	•	git commit --amend	//增加内容提交到上次提交记录中
	•	git commit -am "commit message" [--amend]//追加文件,并提交叫到上次修改记录中去
 
(慎重操作,注意备份)
	•	git reset --hard HEAD	//返回过去到最后一次提交位置
	•	git reset --hard HEAD~	//返回到倒数第二次版本
	•	git reset --hard HEAD~n //返回到前几次的某个版本
	•	git reset --hard d019a46 //回到id为那个的版本(返回后也可以回到将来版本)
	•	git reflog [-n num] //可以查询之前的日志-n是数字查询之前几次上传日志地带id
	•	git reset --hard [commit_id]

知识点
	•	git branch [name] // 创建分支
	•	git checkout branch_name //切换分支
	•	git merge		//合并分支
	•	git branch -d [name] //删除分支


$ git push -u origin master(其中master是分支的名称) #把本地库的所有内容推送到远程库上

#########push的时候发现有大文件的时候可以执行下面的命令
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch BIGFILE_PATH' --prune-empty --tag-name-filter cat -- --all # BIGFILE_PATH为需要删除的文件

如果发现保存:Cannot rewrite branches: You have unstaged changes
执行:git stash 

GitHub中删除某个项目

1、 首先进入到自己的github账户,定位到需要删除的代码
在这里插入图片描述

2、 点击进入该代码管理仓库, 在主界面上有Settings标志,点击进入
在这里插入图片描述

3、 下拉到最后有一个删除界面
在这里插入图片描述
4、 将该repository的全名粘贴上,删除即可
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!