赞
踩
1.设置账户(需要和github账户设置一致)
git config --global user.name xxx
git config --global user.email xxx@foxmail.com
2.查看设置
git config --list
user.name=xxx
user.email=xxx@foxmail.com
2.1修改远程仓库地址
git remote set-url origin https://github.com/Tianguoliang/api4exe.git
3.创建git本地仓库
git init
此时会出现提示 : inialized empty Git repository in d://com/liu/.git
4.查看git状态
git status
一般来说会显示需要提交的文件(uncommited)和未追踪的文件(untracked)
uncommited:已有的,刚被修改尚未提交的
untracked:原先没有的,新建的
5.添加git文件到暂存区(需要和版本库区分)
git add <name>
6.git提交文件
git commit -m "add a function in test.java"
-m表示注释,为提交时的说明,必须要有!
7.git删除文件(夹)
git rm test.txt //删除文件
git rm -r filebook //删除文件夹
git rm和直接删除的区别在于git rm会将此文件的操作记录删除,而直接删除仅仅是删除了物理文件,没有删除和此文件相关的记录。git rm后会在版本库产生区别(有操作日志),而直接删除没有。
可以用下面两种操作在版本库中删除文件:
git rm test.txt => git commit -m 'delete a file'
rm test.txt => git commit -am 'delete a file'
注意:命令git rm用于删除一个文件。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容。
8.git操作日志
git log --decorate --graph --oneline --all #显示当前及之前的版本号
git log --pretty=oneline #将版本历史显示为一行,历史版本号全部显示
git log --pretty=oneline --abbrev-commit #将版本历史显示为一行,历史版本号部分显示
git log --graph #查看分支合并图
9.版本回退
执行版本退回后,本地工作区的内容会自动和回退到的版本库版本的内容保持同步
git reset --hard HEAD^ 回退到上一个版本
git reset --hard HEAD^^ 回退到上上个版本,以此类推,一次提交即为一个版本
git reset --hard e9efa77 回退到 e9efa77 版本
10.git还原操作
丢弃工作区的操作,但不会丢失暂存区的操作(add操作能将更改添加到暂存区),实际上就是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”
git checkout -- readme.txt
11.git暂存区撤销操作
工作区修改了文件,而且执行了add,但还没执行commit,暂存区还是可以撤销的
git reset HEAD readme.txt
备注:git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本。
二.与github/gitee协同使用(git代码托管服务器)
和GitHub相比,码云(Gitee)也提供免费的Git仓库。此外,还集成了代码质量检测、项目演示等功能。对于团队协作开发,码云还提供了项目管理、代码托管、文档管理的服务,5人以下小团队免费。
1.配置远程仓库免密登陆
(1)在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:ssh-keygen -t rsa -C "xxx@foxmail.com"
备注:一路回车,执行生成 id_rsa 私钥 和 id_rsa.pub 公钥,Windows用户在git bash中输入上述指令
(2)获得key的内容,复制下来,添加到gitHub的SSH key中
windows位置:C:\Users\用户名\.ssh\id_rsa.pub
Linux位置:cat ~/.ssh/id_rsa.pub
(3)ssh -T git@github.com #验证key,根据提示输入yes,添加为信任主机
或者ssh -T git@git.oschina.net
1.添加文件到版本库
如本地项目为demo,在demo目录下,执行git init
然后:
git add *:将文件提交到暂存区
git commit -m:将暂存区文件提交到仓库(单引号内为注释)
2.检查是否有未提交的文件
git status:检查当前文件状态
3、检查文件是否被修改
git diff:查看文件修改的内容
4、查看历史变更记录
git log:获得历史修改记录
git log --pretty=oneline:使记录只显示主要的内容,一行显示
5、版本回退
首先通过命令行查看当前的文件内容:
然后通过下列的命令,执行版本回退:
可以看到内容已经回退到上一个版本,通过git log查看修改记录,发现最近的一次233333内容的记录已经看不到了,如果想回到最新的版本,可以通过如下命令进行回退:
从上图可以看到,文件版本又回退到了最新的状态。
命令解析:
cat:查看文件内容
git reset --hard HEAD^:回退到上一个版本
git reflog:获取历史版本号
git reset --hard 版本号:回退到该版本号对应的版本
PS:如果要回退到上上个版本,可以使用git reset --hard HEAD^^命令,但是这样稍显麻烦,如果回退到100个版本之前,只需要执行这个命令即可:git reset --hard HEAD~100;
新建分支tyson
git branch tyson
转到分支tyson
git checkout tyson
查看所有分支
git branch
将dev合并tyson
git merge
提交
git push -u origin tyson
切换分支命令:
git checkout (branchname)
当你切换分支的时候,Git 会用该分支的最后提交的快照替换你的工作目录的内容, 所以多个分支不需要多个目录。
合并分支命令:
git merge
删除分支命令:
git branch -d (branchname)
使用 git checkout -b (branchname) 命令来创建新分支并立即切换到该分支下,从而在该分支中操作。
PS:关于Git和github关联,可以参考这篇博客:Git关联github,这里跳过不细说。
检查文件是否还有未提交或者修改的,然后将文件提交到github仓库,命令如下:
命令解析:
git remote add origin https://github.com/zwg481026/APITest.git是将你本地的仓库和github仓库进行关联,在操作时候,需要将github地址替换为自己的,否则无法推送!
然后执行下面的命令:
第一次推送master分支时,加上了 –u参数,Git会将本地的master分支内容推送的远程新的master分支,还会把2个master分支关联起来,在以后的推送或者拉取时就可以简化操作。
推送成功后,可以立刻在github页面中看到远程库的内容已经和本地一模一样了,登录你的github,从仓库中查看
之后,只要本地做了修改提交,就可以使用git push origin master命令进行文件推送。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。