linux下git的基本命令与github的基本运用

http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
廖老师那里学的,以下是自己总结了以下。

git基本命令

一、安装

1.sudo apt-get install git

2.git config –global user.name “xxx”

3.git config –global user.email “xxx@xxx.xxx”

二、创建仓库

1.mkdir xxx #新建一个文件夹

2.pwd #查看当前目录

3.git init #把当前目录变成git可以管理的仓库

4.rm -(r)f .git #取消git管理

4.ls -ah #可以查看被隐藏的文件

三、存档

1.git add xxx.xxx #把文件添加到仓库

2.git commit -m “xxx” #提交

e.g

git add a.txt
git add b.txt c.txt
git commit -m “add 3 txts”

四、查看

1.git status

2.git diff

五、读档

1.git log [–pretty=oneline]

2.git reset –hard HEAD^
#回到上一档案。HEAD表示当前版本,HEAD^表示上一版本,HEAD^^表示上上版本…HEAD~100表示上100个版本

3.git reflog
git reset –hard xxxxxxx
#从上面的列表里找到恢复前的特征码xxxx,能回到恢复前

4.cat xxx.xxx #查看当前xxx内容

六、撤销

1.git checkout – xxx.xxx
#未add,撤销前一次修改。改乱了工作区某个文件的内容,想直接丢弃工作区的修改

2.git reset HEAD xxx.xxx
#add了。改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作

3.提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

七、删除文件

  1. git rm xx.xxx

github命令:
http://pan.baidu.com/s/1jGxjQL4#path=%252Fgit

github基本运用

github用法

一、git与github关联

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

ssh-keygen -t rsa -C "youremail@example.com"

你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。

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

2.登陆GitHub,打开“Account settings”,“SSH Keys”页面:

然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容

二、添加

1.在github上 Create a new repository。

2.第一次添加按照网站上的方法来就行了

#这是通过http协议来传输
git remote add origin https://github.com/.....、

#这通过SSH
git remote add origin git@server-name:path/repo-name.git

git push -u origin master

3.更新
git push origin master #dev用来同步操作,master是前

4.克隆
git clone xxxxx #xxx从SSH复制

三、创建与合并分支

查看分支:git branch

创建分支:git branch < name>

切换分支:git checkout < name>

创建+切换分支:git checkout -b < name>

合并某分支到当前分支:git merge < name>

删除分支:git branch -d < name>

合并分支,并且禁用fast forward:git merge --no-ff -m "merge with no-ff" dev

当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场。

如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>强行删除

git checkout -b dev origin/dev

因此,多人协作的工作模式通常是这样:

首先,可以试图用git push origin branch-name推送自己的修改;

如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;

如果合并有冲突,则解决冲突,并在本地提交;

没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch –set-upstream branch-name origin/branch-name。

这就是多人协作的工作模式,一旦熟悉了,就非常简单。

查看远程库信息,使用git remote -v;

本地新建的分支如果不推送到远程,对其他人就是不可见的;

从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;

在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;

建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;

从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。

四、创建标签

先转到要加标签的分支上,然后:
git tag

命令git tag <name>用于新建一个标签,默认为HEAD,也可以指定一个commit id;

git tag -a <tagname> -m "blablabla..."可以指定标签信息;

git tag -s <tagname> -m "blablabla..."可以用PGP签名标签;

命令git tag可以查看所有标签。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值