Android开发经验谈Android技术知识Android知识

再不学git我们就老了

2017-09-20  本文已影响200人  ccccccal

git 配置

git config —global user.name "ALguojian"

git config —global user.email "jzhszy@foxmail.com"

git常用命令

merge只是合并另外一个分支的内容,rebase也合并另外一个分支的内容,但是会把本分支的commits顶到最顶端。具体可以查看下面的说法
https://www.zhihu.com/question/36509119/answer/67828312
http://www.cnblogs.com/kidsitcn/p/5339382.html
http://blog.csdn.net/fybon/article/details/52460516

是清空所有暂存区的记录,drop 是只删除一条,当然后面可以跟 stash_id 参数来删除指
定的某条记录,不跟参数就是删除最近的,而 clear 是清空。

添加SSH

在git bash 输入 ssh-keygen -t rsa 生成文件,github创建新的SSH并填入,之后输入 ssh -T git@github.com 测试是否添加成功

推送或者下拉(先pull再push)

git push origin master 推送

git pull origin master 下拉

git pull origin master --allow-unrelated-histories
git push -f origin master 更新

git clone git@github.com:ALguojian/test.git下载github上面的项目到本地

关联giuhub仓库

git remote add origin https://github.com/ALguojian/git_study.git

origin就是仓库名字,建议名字和远程仓库一样,较易管理

git remote -v 查看该项目有哪些仓库

git push origin master 提交代码可以到 master 分支,或者其他分支

git remote rm "origin" 删除origin远程仓库

alias 配置 简短参数

git config --global alias.c checkout
git config --global alias.cm commit
git config --global alias.st status
git config --global alias.br branch

git config -l 查看所有配置

补充,移动到其他提交记录,即HEAD的指向

git checkout a 不仅用于切换分支还可用于切换提交记录,此时a代表提交记录的哈希值(很长),不过只需要前几位即可

^后面加数字标识回到父类其他分支用法:
git checkout HEAD~; git checkout HEAD^2; git checkout HEAD~2

并且还支持链式操作:
git checkout HEAD~^2~2

所以master^相当于“master 的父节点”。master^^master 的第二个父节点,也可以将 HEAD 作为相对引用的参照,可以一直使用 HEAD^向上移动

git branch -f master HEAD~3 将 master 分支强制指向 HEAD 的第 3 级父提交(强行改变分支所处位置)

git cherry-pick C2 C3 C4(改变提交记录与主分支,C2是提交的记录的哈希值)

git fetch 同步绑定的仓库(一般是其他分支)

git pull 就是 git fetchgit merge <just-fetched-branch> 的缩写!

git fakeTeamwork foo 3模拟远程提交,可以指定分支和次数

上一篇 下一篇

猜你喜欢

热点阅读