Git版本控制笔记

一、关于Git

        官方介绍:Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

        创造者:Linus Torvalds。

        创造Git的动机:更好地管理Linux内核。

二、Git版本控制的笔记(常用命令)

        1、配置提交者的身份信息(可以让别人知道是谁提交了代码)

git config --global user.name "your name (written by you)"
git config --global user.email "your email (written by you)"

        2、查看自己的身份信息

git config --global user.name
git config --global user.email

        3、为xxx项目创建一个本地代码仓库

第一步:进入xxx项目路径

第二步:在该路径下输入git init

第三步:查看仓库是否创建完成,可以通过ls -al命令查看是否有.git目录,有就是创建成功了

        4、删除xxx项目的本地代码仓库

直接在xxx路径下删除.git目录

        5、添加即将提交的xxx项目代码

第一种(单文件方式):git add 文件名

第二种(全部文件方式):git add .

第三种(全部文件方式但部分文件或路径不想提交):在xxx项目下添加.gitignore文件,该文件中加入不想提交的文件或路径,然后执行git add .

        6、正式提交(描述信息必须要填)

git commit -m "提交的描述信息"

        7、查看提交记录

查看全部提交记录:git log

查看单个提交记录:git log 记录id

查看最新n次提交记录:git log -n

        8、commit后查看修改过的文件内容(不要一commit就查看,这样是察觉不出的;commit后修改过文件调用以下两个命令才有效)

文件层面:git status

文件内容层面:git diff

具体文件(假设是"a.java"这个文件)内容层面:git diff a.java

        9、撤销未提交的修改(只适用于没有被执行过add命令的文件)

git checkout 文件名

        10、撤销未提交的修改(强制撤销)(其中的"HEAD"我也不知道是啥意思,懂的告诉请我一下)

git reset HEAD 文件名

        11、创建一个分支

git branch 分支名

        12、切换到该分支v1(假设分支v1已经创建好)

git checkout v1

        13、如果切换分支的时候(例如,执行git checkout master)出现这个错误:Your local changes to the following files would be overwritten by checkout Please commit your changes or stash them before you switch branches,请参考这篇博客。

        14、合并分支

第一步:切换回master,执行git checkout master

第二步:执行git merge v1(假设分支v1存在)

        15、删除分支

git branch -D v1(假设分支v1存在)

        16、和远程版本仓库协作

假设https://github.com/example/xxx.git是远程版本仓库

下载仓库到本地:git clone https://github.com/example/xxx.git

本地上进行了修改和提交,同步到这份远程版本仓库:git push origin master(origin部分指远程版本仓库地址,master部分指同步到哪个分支)

远程版本仓库的修改同步到本地(第一种方式):
1.git fetch origin master(同步下来的代码不会合并到任何分支上,而是会存放到origin/master分支)
2.通过diff查看远程版本仓库修改内容:git diff origin/master
3.调用merge命令将origin/master分支的修改合并到主分支:git merge origin/master

远程版本仓库的修改同步到本地(第二种方式):
git pull origin master(pull命令≈fetch命令+merge命令)


三、参考资料

        1、Git

        2、分布式版本控制系统

        3、郭霖,第一行代码Android第3版

你可能感兴趣的:(版本控制,Git)