GIT 初学笔记--建立一个项目

来源:互联网 发布:visual studio c编程 编辑:程序博客网 时间:2024/04/29 23:32

刚开始做项目,使用到了GIT,上网什么的查了下,然后初步学习了下,做以下笔记。

1.GIT干嘛用的?  -->GIT 就是用来进行版本控制的,也就是在开发过程中适应配合工作需求的。

2.GIT优势?        -->据说很有优势,相比其他的来说就是快捷方便省空间,具体的网上应该很多。


GIT安装步骤;

1.安装GIT,我是在window环境下安装的,直接在GIT网站下载安装包,默认安装就好,其中有一部要选择GIT bash 和git GIT 那样,比较好用。。(图稍后补上)

2.安装好后,你的电脑就有了git bash,这个是命令行的操作,和linux 命令行操作基本一致。常用有 ls(列出当前文件目录)cd ***(前往***这个文件夹) mkdir ***(新建文件夹)

clear(清屏)vim ***.***(新建某个文本文件,这个vim使用可以谷歌或百度咯 主要有 按“i”,进行编辑,编辑结束后":wq"保存并退出,":q"退出) ,当然在window下,直接用其他的创建方法更简单。

3.安装结束了。

GIT进行项目管理,分两种一种你自己构建项目,一种你参与项目。我自己认为这两个对我来说就一个区别一会慢慢说。

首先先进行一些配置,使用git config --help 可以调出帮助文档进行必要配置

主要有两个,git config --global user.name  "Your Name"   ,   git config --global user.email  "Your Name"  

为什么要配两个,因为你不配置的话,后面不能用同步(我是这么遇到过的),这样就知道你是谁,谁改了文件之类的。

然后来构建或者参与一个项目:

一种 自己新建项目

打开bash ,到某个目标文件夹下,敲 git init , 这个文件夹就成git文件夹了。

另一种在 github.com ()中新建一个git 项目,然后本地clone 一下就好。如下:

 

        然后再你的github上就可以看到这个项目,下面这个SSH clone URL 就是你git项目的源

现在开始说重点了。。。。上面说的都是废话·····


一般我们加入别人的项目比较多,当你开始让别人加你项目的时候,我觉得你的GIT已经很厉害了,所以我从加入的角度写。

1.要想下载源上的东西,你首先的和源建立联系。建立联系是用URl,然后还得验证身份就是用ssh key。

使用 ssh-keygen  会在默认文件夹中生成一个公钥和一个私钥把你的公钥打开,复制里面的内容给你的管理员,让他添加你到项目中这样你就能访问源,并下载东西了。(PS:github.com的项目有教程如下https://help.github.com/articles/generating-ssh-keys)

2.使用 git clone ******服务器项目地址******拷贝你们项目的源代码。

)OK,你已经在你的当前文件夹中拷贝了你的项目源码了(记得cd  到你的工作文件夹在clone···)

接下来是GIT的基本使用

1.分支的概念:我的理解就是,为了怕你把代码乱搞,而且便于管理,所以给你相同资源也就是分支,你自己玩去,然后你觉得差不多了,你就可以把你的分支合并到原来的项目中。更好的理解可以找专门的解说!!!

2.常用过程:

2.1 clone 后 你的电脑中默认为master,这是你的主分支,一般不再主分支中进行操作(相当于留底备份吧),所以你新建一个子分支。

2.2 新建一个你用来操作的子分子 使用命令 git branch ****branchName****  这样你就新建了一个名字为****branchName****的分支。

2.3 转到子分子 git checkout ****branchName****  跳到****branchName****分支,****branchName****为master的时候就调回主分支

2.4 对你的分支进行各种文件操作啊什么的···

2.5 在任何分支操作后,要保存在仓库中都的进行以下步骤  首先 git add 文件名  ,然后 git commit -m "信息内容"   这样你做的修改才会被保存到仓库中的

2.6 你觉得你的分支很好了,想要合并到主分支中 使用命令 git merge ”日志内容“ HEAD branchName 其中branchName 就是你当前的分支名称

2.7你现在想和服务器中的内容合并,就使用git push origin **指分支名**

2.7 然后你的一次分支开发就结束了,可以重复上面的过程了。。。。

注:

git branch -d branchName  删除已被合并的分支
git branch -D branchName 强制删除未被合并的分支

然后现在说一下 git add 和 git commit,首先,可以这样理解git,它就是一个仓库,你拿出来编辑后,想要放回就得add进去,然后做个确认。
所以每次编辑后的文件想要放入仓库就得执行这两个操作,具体还想知道,可以参考相关教程咯。

不想写了····回头再写,下面粘贴上我最近做的比较,关于git命令的。
git init         会将本文件夹设置为一个git版本仓库
git add .(文件) 添加到临时文件仓库。
git commit **** -m "注释"
git status 获得状态,可以查看是否操作成功之类的啊
git diff  可以查看区别 有两个参数一个为 --staged 一个为--cached  前者为work vs stage 后者为staged local
git rm  *** 删除某个文件,这个只是删除工作区的文件,不删除仓库的文件,需要git commit 一下才会删除工作区的文件。
使用git checkout -- filename  可以将这个文件恢复。
git mv 目标文件 目标地址
git log 输出日志,改变
git  whatchanged  查看什么变化了···
git fetch origin (从远程服务器拉下来,是建立了新的分支)
git push origin(你需要上传的目的)  branch(那个分支push上去) 
git branch 查看当前分支 
gitk  可以出现gitGUI 可以查看项目的历史
git branch : 查看当前分支
git branch branchName :新建分支branchName为分支名
git checkout branchName  :转化为branchName分支
修改某个分支的东西不会影响其他分支的东西·
git show-branch  查看两个分支的差异
git diff branchName1 branchName2  查看两个分支的差异
合并分支
两中方法:
git merge "log 日志" HEAD branch2   将branch2 分支的内容合并到当前工作分支
另一种做法:
先:git checkout master (先到待合并分支)
        git pull .branch1 (将branch1 的分支pull到当前分支上)
标识版本号,这样所有的文件被标识为当前版本号,这样以后要是想恢复为这样就可以了
如下操作
git tag -a Beta1 -m "message "
git show betaName 这样发现两个版本的区别啊·
git checkout BetaName 回到某个版本(这样不就和分支的概念差不多了吗????求解是)
git branch -d branchName  删除已被合并的分支
git branch -D branchName 强制删除未被合并的分支
估计不会用到吧·
git reset --hard HEAD 回到合并前状态(HEAD指的是指针)
git reset --hard ORIG_HEAD *************已提交回复


 

原创粉丝点击