git记录
2017-3-30:
git常用命令:
1.$ git init:初始化git仓库
2.$ git add *.c:跟踪文件
3.$ git commit -m 'initial project version':将文件提交到仓库
4.$ git clone git://github.com/schacon/grit.git:克隆一个仓库到本地
5.$ git clone git://github.com/schacon/grit.git mygrit:把克隆下来的项目重新命名
6.$ git status:查看文件状态
7.On branch master:显示当前分支
8.Untracked files:未跟踪的文件
9.Changes to be committed:文件已暂存
译注:其实 git add 的潜台词就是把目标文件快照放入暂存区域,也就是 add file into staged area,同时未曾跟踪过的文件标记为需要跟踪,还能用于合并时把有冲突的文件标记为已解决状态等
10.$ cat .gitignore创建名为.gitignore的文件
11.*~:忽略~结尾的文件
12. !lib.a:忽略取反就是不忽略的文件
13./TODO忽略根目录下的TODO文件
14.build/:忽略build目录下的所有文件
15.git diff:暂存的数据和工作空间数据的差异
16.git diff --cached比较当前工作空间和上一次快照之间的差别
17.$ git commit:提交文件
18.$ git commit -a :跳过暂存区直接提交
19. git rm grit.gemspec:删除grit.gemspec文件,如果只是简单的在工作空间中删除,运行git status会显示手动删除的文件处于未跟踪状态,强制删除在后边加上-f
20.$ git rm --cached readme.txt:移除跟中名单,但是不删除文件
21.对文件改名:$ git mv file_from file_to,从前面的该为后面的
22.git log:查看跟新历史
23.$ git log -p:查看每次提交的差异(非常有用)
24.git gitk 图形化界面
25.$ git commit --amend:测回提交
26.$ git reset HEAD benchmarks.rb:取消暂存benchmarks.rb文件
27.$ git checkout -- benchmarks.rb:撤销对benchmarks.rb文件的修改
28.$ git remote:查看远成仓库
29.$ git remote -v:显示远程仓库的克隆地址
30.新建远程仓库:$ git remote add pb git://github.com/paulboone/ticgit.git
31.$ git fetch [remote-name]:在远程分支抓取数据->远程分支名称
32.git pull:抓取远程分支并合并到自己分支
33.$ git push origin master:将数据推送到远程分支master:
34.$ git remote show origin:查看远程分支
35.$ git remote rename pb paul:修改远程分支名
36.出现冒号按q继续
37.$ git lga:显示分支情况
38.合并merge
39.stash暂存
40.stash pop :解除暂存
2017-3-31:git分支
1.git保存文件差异形式:快照
2.提交对象:1.common对象->记录着作者信息等内容;2.各种文件快照对象;3对象树
3.分支:指向提交对象的动态指针
分支创建命令:$ git branch testing
4.HEAD指针:指向本地正在工作的分支
5.$ git checkout testing:切换分支到testing
6.$ git checkout -b iss53:创建并切换到该分支
7.$ git merge hotfix合并分支到hotfix
8.Fast forward:快进,由于合并分支没有改变,只需要把当前分支推向前即可
9.$ git branch -d hotfix:删除分支hotfix
10.$ git merge iss53合并到iss53
11.unmerged:没有合并成功,文件存在冲突
12.git add:标记问题已经解决
------------------------------------------飘逸分割线----------------------------------------------------------------
1.$ mkdir learngit:创建文件夹learngit
2.$ cd learngit:进入learnhit目录
3.$ pwd:显示当前目录
4.$ git init:初始化目录
5.git config user.name "one"
6.git config user.email "one@someplace.com"
7.ls -ah显示当前文件夹下的隐藏文件
8.$ git add readme.txt:把文件加入暂存区
9.git commit把文件提交到仓库
10.git status:查看当前状态
11.git diff:查看历史差异
12.git add -A :添加所有改动
13.git add * :添加新建文件和修改,但是不包括删除
14.git add . 添加新建文件和修改,但是不包括删除
15.git add -u:添加修改和删除,但是不包括新建文件
16.$ git log:查看版本历史修改
19.$ git reset --hard HEAD^版本回退
20.git reflog:显示你的命令
21.git checkout -- readme.txt:废弃工作区的修改
22.git reset:把暂存区的文件测回并清除提交痕迹
23.$ ssh-keygen -t rsa -C "youremail@example.com":创建sshkey
24.id_rsa:sshkey私钥
25.id_rsa:sshkey共钥
26.$ git remote add origin git@github.com:michaelliao/learngit.git:关联远程仓库
27.$ git push origin master:推送本地分支到远程
28. The authenticity of host 'github.com (xx.xx.xx.xx)' can't be established.
RSA key fingerprint is xx.xx.xx.xx.xx.
Are you sure you want to continue connecting (yes/no)?:验证指纹信息,点击yes即可
29.$ git checkout -b dev:创建分支并切换到该分支
30.$ git branch:查看分支
31.$ git merge dev:合并分支
32.$ git branch -d dev:删除分支
---------------------git学习暂停---------------------------------------------