一:版本的推送和获取
chun-can_________元(原始版本(复制版本的上一个版本)) clone____________复(复制版本) clone_bare________共(共享版本相当于中转站) ————元————修改数据用 git add ... 然后 git commit -m/--message "..." 然后git push ... (git push)后跟————共————(若不加地址报错); ————复————修改数据用 git add ... 然后 git commit -m/--message "..." 然后git push ... (git push)后跟————共————(若不跟地址默认推送到原始版本里);
拉取数据在————元/复————上用git pull ... (git pull)后跟地址————共————(元不加报错,复不加默认拉原始版本)
git reset HEAD ... 重置暂存区命令,即回退git add命令,HEAD表示版本库当前版本, ... 可选参数,指定被重置的的文件或目录
git status 查看当前工作区各个文件从处理情况
git rm ... (...)表示要删除的文件名称
.gitignore文件里加上不想add的文件名或目录即可忽略掉盖文件或目录
二: 创建/切换分支 git checkout -b ... 创建并切换分支,(...)表示要创建并切换的分支的名字 git branch 查看当前所有分支,其中用(*)号凸显的就是当前所在分支 git checkout ... 切换分支,(...)要切换的分支的名字 git branch ... ... 从现有分支中创建分支,第一个(...)表示要创建的分支的名字,第二个(...)表示从哪个分支中创建分支
三: 删除分支 git branch -d ... 删除分支(...)表示被删除的分支的名字 git branch ... ... 恢复删除分支第一个(...)表示要恢复的分支的名字; 第二个(...)表示想要恢复的分支的散列值 git reflog 查看散列值
四:合并分支
git branch 查看有哪些分支 git checkout ... (...)是指要切换到以哪个分支为主 git merge ... (...)是指被合并的分支 ————当命令行输出 Auto-merging foo.txt CONFLICT (content): Merge conflict in foo.txt Automatic merge failed; fix conflicts and then commit the result. 表示git遇到自身无法解决的冲突,需要手动处理冲突
可以用git status 查看返回的信息, ————命令行返回 On branch master Your branch is ahead of 'origin/master' by 12 commits. (use "git push" to publish your local commits)
You have unmerged paths. (fix conflicts and run "git commit") (use "git merge --abort" to abort the merge)
Changes to be committed:————————————————————————————这部分显示的是自动合并的文件
modified: bar.html
Unmerged paths:—————————————————————————————————这部分是用户必须手动处理的文件 (use "git add <file>..." to mark resolution)
both modified: foo.txt
git pull ...... 后报Pull is not possible because you have unmerged files......需要git reset –hard FETCH_HEAD 进行工作区代码重置整理,再然后在git pull ......
五:移植/捡取分支 git rebase ... --onto ... 移植分支(将A分支的东西移植到B分支上,第一个(...)表示B,第二个(...)表示A)_____________是将A是东西覆盖B的东西,B在本地做的修改都没有了
git cherry-pick ... 恢复在摸个版本被误删的内容(...)表示需要恢复的版本的散列值 git reflog 查看散列值
git remote add ... ... 给push和pull的地址取别名,不用全部打出来,第一个(...)是要取的别名名称,第二个(...)是真正的地址 git remote --verbose 查看提交到的版本库详细地址 git remote rm ... 删除给地址取得别名(...)就是别名的名称
标签 git tag ... master -m '...' 给版本做一个标签;第一个(...)是tag名称;第二个(...)是提交注释; git push origin ... 提交标签版本;(...)tag名称; 没有指定分支地址在github上Branches(分支)和Tags(标签)平级
子模块 git submodule add ... ... 在哪个目录下使用的命令行,就是在这个目录下的项目新建一个第二个(...)为名的目录;第一个(...)是新建的那个项目的地址;意思是吧第一个(...)地址的项目合并到你现在所在的项目; git submodule init 初始化子模块 git submodule updata 更新子模块
git update-index --assume-unchanged ... 忽略某个文件的修改;(...)表示要忽略的文件名,需假文件类型后缀 git update-index --no-assume-unchanged ... 取消上一步要忽略的文件 git update-index --really-refresh 重置所有文件状态
git config --global alias.c ... commit的别名,命令中alias.c中的c就是我们要取的别名,后面的(...)是具体的命令
本地代码上传github
1:在github上创建项目,入下图

2:填写项目名称,类型,

第一处填写名称。第二处选手类型是私有还是共享的,第三处是使用自述文件初始化此存储库,如果要导入现有存储库,请跳过此步骤。否则一点要勾选;
3:在本地新建一个文件夹;然后右键点击选择Git Bush Here( 类似于Win的cmd );在git bush里输入
(1):git config --global user.name "你的名字或昵称";
(2):git config --global user.email "你的邮箱";
(3):git init (4):git add . (5):git commit -m "first commit" (first commit 本次提交的内容) (6):git remote add origin https://github.com/.../....git (地址换成你建的项目的地址,不知道的话看下边 项目地址是哪个的图) (7):git push -u origin master (这一句执行的时候 可能需要输入你的 git 账号 和密码)

(8):输入第7步后会报:
error: failed to push some refs to 'https://github.com/.../...'
hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused by another repository pushing hint: to the same ref. You may want to first integrate the remote changes hint: (e.g., 'git pull ...') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details.
出现错误的主要原因是github中的README.md文件不在本地代码目录中,输入git pull--rebase origin master,然后再输入第7步即可
|