Re: [请益] GIT的使用方式

楼主: abc0922001 (中士abc)   2016-07-24 12:49:52
※ 引述《denru01 (阿儒)》之铭言:
: 其实已经用了GIT一阵子了,
: 常用的功能与指令也学的差不多,
: 应该可以说"懂的怎么用GIT的功能",
: 但我一直觉得我只是在乱用一通,
: 实际应用上一团糟XD
: 所以来发文请教各位前辈遇到下述的这些问题,
: 都是怎么处理的.
: 1. 档案里面有实验的参数或是路径.
: 比方说,
: libraryPath = '/u/homes/abc/xxx';
: speedNow = 3;
: 其它东西基本上是不变的,
: 只是这个路径会随着用不同电脑不同而不同,
: 而speedNow是实验参数,
: 可能会试用不同的参数,
: 看跑出来的结果如何.
: 即使其它地方不动,
: 只要这两个修改了,
: 又要重新commit,
: 然后另一台电脑如果pull就毁了.
: 目前试过:
: a. 单独使用一个.ini file来存这些参数,
: 但如果这个.ini file有commit进去,
: 而又会不断的修改内容,
: 这件事就又发生了.
: b. 写一个.ini.example,
: 然后要用的时候复制example成.ini,
: 但不commit这个.ini.
: 但问题是,
: 万一要加参数的话,
: 就要改很多个档案,
: 也可能会出现.ini.example与实际使用的.ini不一致的情况.
个人设定参数写在一个文件,然后忽略它。
如果有用小乌龟,可以试试 skip worktree
http://blog.miniasp.com/post/2014/12/23/Git-Advanced-Assume-Unchanged-Skip-worktree.aspx
: 2. Commit的频率与log撰写.
: 目前一直抓不到commit的节奏,
: 到底是改一个function就要commit呢?
: 还是完整的完成这个feature再commit呢?
: 有看过一个说法是说绝对不要commit不会work的东西上去,
: 但有时要改到会work要改很多地方,
: 万一中间出事就没救了.
: 加上我log一直都是写的很完整,
: 都要dif一下, 一一看改了什么,
: 再写进log,
: 导致后来都很懒的commit,
: version control型同虚设.
: 比方说如果这次commit改了很多个档案,
: 是要一一说每个档案改了什么吗?
做之前以一个任务为名称切一个本地分支,出去吃饭就commit,厕所就commit,想到就commit,做完squash回去,或是rebase整理完在merge回去。
分支常常create跟merge也是git很鼓励的事,也是git才能做到的
: 3. 大档案的存在.
: 跑程式需要一些input,
: 有些input非常巨大,
: 但没有这些档案又无法跑.
: 现在的做法就是,
: 只commit code档,
: 这些input单独包成一包,
: 每个有使用code的地方都传一份,
: 如果input有修改,
: 就要重新打包,
: 重新上传所有的位置.
: 非常没有效率,
: 而且有时会忘记通知那人input data有更新了...
可以试试submodule…把大档案单独一个repo去管。
: 4. 改名与档案结构改变.
: 有时code写到后来会变的很乱,
: 所以会想把档案重新分类一下,
: 并改个名,
: 这个就不太知道有什么简单的方法可以达成了...
改名git有支援,如果你不改内容或是只改一两行(有实验过),add之后会自动辨识成rename
show log可以包含有改名的历史,这部分我只在小乌龟用过,bash里面不知道…
: 5. Log写错或是忘记commit某些档案.
: 有时改了很多个档案,
: 但忘记commit某一些改过的档案,
: 或是Log写错.
: 麻烦有经验的前辈指导一下,
还没push上去之前可以修改前一次commit
或是rebase去整理。
push上去的话…我就不知道了
: 谢谢~
作者: bill42362 (酒池肉林夜夜生科)   2016-07-24 14:40:00
push 上去的话...就 -f 囉 XDD
作者: derekhsu (華麗的天下無雙)   2016-07-24 18:24:00
楼上不要教坏小朋友
作者: abccbaandy (敏)   2016-07-24 18:59:00
想到以前同事push不了就硬推...
作者: derekhsu (華麗的天下無雙)   2016-07-24 21:28:00
推到自己的branch也就算了,有人推master也下force的……
作者: cookie1115 (大饼)   2016-07-24 23:15:00
master没关force 也是很敢...
作者: troylee (troylee)   2016-07-25 00:50:00
我也遇过...还装傻...
作者: Vitaceae (Vit)   2016-07-25 02:31:00
source 档案喂参数不好吗?
作者: derekhsu (華麗的天下無雙)   2016-07-25 17:48:00
一开始的Gitblit不能关master,被干掉好几次,后来换Gitlab才可以
作者: bill42362 (酒池肉林夜夜生科)   2016-07-26 10:02:00
我倒是常常别人搞坏的树,请我帮忙用 -f 修 >"<

Links booklink

Contact Us: admin [ a t ] ucptt.com