IT lead insists we don't need backups, "git takes care of that automatically"

>IT lead insists we don't need backups, "git takes care of that automatically"
>staffer who's been there two years is updating code
>he thinks he's working in a dev branch due to git's misleading command structure
>he changes the head and pushes changes
>three years of work are lost
>IT lead keeps yelling for someone to just roll back the commit
>IT lead doesn't understand how this could happen because he barely knows how git works
>staffer is fired for an understandable mistake instead of IT lead for being willfully incompetent

I hate git for being shitty enough for this to happen, but by god, I hate management just as much.

Other urls found in this thread:

atlassian.com/git/tutorials/undoing-changes/git-revert
en.wikipedia.org/wiki/Zip_(file_format)
git-scm.com/book/en/v2
sbf5.com/~cduan/technical/git/
learngitbranching.js.org/
twitter.com/AnonBabble

>due to git's misleading command structure

should have used cvs :^)

atlassian.com/git/tutorials/undoing-changes/git-revert

Reflog?

huh? i dont believe this story. whenever this happens just force push a local copy?

So... the staffer run with --force? Or?

If you don't use Perforce it's not a real company.

this. the irony

Version control software is overrated tbqh famalam

Perforce will be dead soon thanks to Git and Bitbucket Server.

>"I don't know how to use the tool I was given to work with." scenario.
>Shitty management who can't use the proper tool for the job

All of this is git's fault.
Yep. Sure, m8.
Seriously wtf do you expect from a bunch of retards who use git for backup? That's almost "no mistakes allowed" level.
Also TL;DR
Your colleague's mistake was understandable, the reaction was not, but you know you have a shitty management so it should be expected. However there is no reason to blame git.

There's no such thing as good version control software. They all have cryptic and complex commands, and they all have the ability to utterly destroy your project if you don't have an autistic person's level of expertise with them.

A company that isn't retarded has teams for different parts of a project and they don't overlap. Then you use zip archives. We did this for 30 years at my company and it never failed.

>Then you use zip archives. We did this for 30 years at my company and it never failed.

en.wikipedia.org/wiki/Zip_(file_format)

>Initial release: 1989
>'30 years'

>being this autistic about exact numbers

Where do you think you are?

>>IT lead insists we don't need backups, "git takes care of that automatically"
I refuse to believe these people exist in real life

>i don't know how to use git
lol

Git is shit for backups. If you use it locally and your data gets corrupted/overwritten, you are basically fucked

If you use anything locally and your data gets corrupted/overwritten, you are basically fucked

i have yet to find a good turorual on how git works

it is fucking pure blackmagic

I'd love to use it, but it is just reserved for elitsit autists that tell you to read the fucking non-existant manual

I hate you need to install it to do the first file upload for a project..

How the fuck can people not know about the reflog and call themselves real developers, Jesus Christ.

>we don't need backups

HAHAHHAAHA look at this faggot and laugh

This worked pretty well for me:

git-scm.com/book/en/v2

I like this explanation of how git works on a conceptual level:

sbf5.com/~cduan/technical/git/

I have spent a lot of time with git though, so I might be one of those "elitist autists".

she scares the shit out of me for some reason

Do legitimate companies actually use git? I always thought it was a meme SJW thing. Perforce is the industry standard.

learngitbranching.js.org/
This helped me learn a lot. Also finding a helpful log alias to visualize your repository is a god send. Personally, I use:

git log --all --graph --pretty=format:'%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)%Creset' --abbrev-commit --date=relative -n 20

Yes, legitimate companies use git. I know that while Google has a really fucked up version of source control, many teams within it still use git. At Amazon, literally every team but ones that work with very old code use git. Everybody in my office (an Amazon satellite) uses git, though I've seen old configurations file which get auto-generated by our package manager for Perforce.

well, than its not a backup system, is it??

My job isn't really tech related, but the point of my story is kind of related to your predicament

>part of my job is basically writing various shit on blueprints related to what we're doing
>doing a project that encompasses about 7 main buildings, 3 balconies, a few smaller kind of office buildings and some mechanical buildings
>our plans are basically just 2 buildings and I'm told to just write the names of the buildings on them, photocopy the prints, and use the same blueprint for every building
>all the specs of the buildings are all different, if I did that they wouldn't match up at all
>say "that's retarded", get some blueprints of the actual buildings printed off and just use those so there's actually some clarity in what I'm doing, not just a bunch of confusing copies of the same building that dont match up at all
>low and behold my company gets sued for something stupid, the blueprints I was using end up being crucial in the case, and if we had used the same blueprint for all the buildings we would have had a really hard time proving that we weren't actually at fault (long ass story that isn't really relevant to the thread)
>ended up saving my company potentially millions of dollars worst case
>end up getting a raise from the same superintendent who told me to just use the same blueprints over again, he thanks me for not mentioning that little tidbit to anyone

tl;dr, take some fucking initiative and just do it. If you think backups should be made just make some backups, if your company is anywhere half decent you probably have a room full of old computers, hdds, etc, etc, etc that no one ever uses anyways. Hindsight is 20/20, but you could have backed that shit up, thrown the HDD in your desk, office, storage closet, whatever, then when shit is hitting the fan you could have been the hero with backup in hand. Its way easier to beg for forgiveness than it is to ask for permission

Taking initiative gets you fired as soon as a moron in charge needs a scapegoat for anything.

>retards who can't into git
Hey bob can you please check in the file, I need to do shit

>than
kys

Even if one person completely destroys the master branch, shouldn't each employee have a copy that they're working on? At most, you should be losing about a month worth of work, not three years.

Only if you work for some shitty company, user.

I took my job by the balls and now I'm raking in the cash.

>being a pussy
Anything can get you fired if you fuck up. Although I guess I'm protected by a union so my job is kind of different, I almost have to kill someone to get fired. I can get "laid off" whenever though

So you can just wipe out a fucking repo on a technology designed to make that sort of thing impossible to do?

Is OP dumb or is your precious git shit?

If you got fired for taking the """"""""""""right"""""""""""" initiative then your company is shit.

An example of right initiative: Like this thread management says backup is irrelevant you do it anyways.
An example of wrong initiative: Management says that backup is important you in your autism says that git does that and money could be saved if backups weren't made.

Everyone else has a full backup in their local copy

>ITT people who think they know how corporations work

Rule #1: You never take initiative if you have a stupid boss.
Rule #2: There's a 90% chance you'll have a stupid boss.
Rule #3: Keep your resume up to date.

Yes but in this specific case, OP possible could have made a backup and been the hero his company needs, but doesn't deserve

Bitbucket Server is kind of shit, desu.

Making a backup which could be stolen in a hack in a company with a shitty IT department like this is exactly what can get you fired or even accused of espionage.

Seriously, never take initiative if the people around you are dumb. Never ever.

Hahah you stupid gits

The whole point of git is that it's distributed, so if one copy of the repository gets deleted or corrupted or whatever, it can be copied from elsewhere with all the change history intact.

Anyway, it's not Gits fault that the user messed up, not to mention using it in a centralized manner which defeats the whole purpose of Git

autismTriggered == True

yet git is designed to allow you to destroy future commits and force those changes on the remote

They do, either way OP is wrong, assuming they aren't treating git like CVS. This should be easy to recover from.

>Seriously, never take initiative if the people around you are dumb. Never ever.
You will go nowhere in life.

You'll go even less without a job.

Anyone who works in IT long enough knows to keep your head down.

OP is dumb. Git has plenty of safeguards against this. You can't push changes to a branch that aren't a fast-forward unless you use "push --force" and repository managers like Gitolite let you ban certain users or everyone from being able to force-push due to how dangerous it is.

Even if the guy in OP's story really force-pushed, every other person in the business who has the repository checked out has a full copy of the repository including every branch, so every computer in the business effectively has a full backup. Anyone could just force-push the damaged branch back to what it was before.

Even of the guy in OP's story was the only person who had the repository checked out, you could still recover the repository on his computer by using the reflog. Git doesn't delete unreachable commits for a period of 90 days after they become unreachable from any branches. Reflog shows you the history of each reference and effectively lets you undo any change in the repository that happened in the past 90 days, including "destructive" changes like branch deletions, force-pushes, rebases, resets, etc. If you know how to use the reflog, you can't accidentally lose data in Git.

>shilling this hard
>blatantly lying

Git has resulted in millions of man hours being lost from cryptic confusing commands and the ability to destroy everything very easily.

It's literally banned in some IT departments.

>It's literally banned in some IT departments
They should consider banning clueless retards instead.

harry potter has resulted in millions of children worshiping the devil from clear spell manuals that destroy faith very easily

it's literally banned in some schools

>banning clueless retards
There are basically only clueless retards graduating from CS programs these days. There's a reason why people actually hire Indians.

>Git has resulted in millions of man hours being lost from cryptic
that's because there are people using it as a backup solution
IT needs to seriously start having standards but garbage companies will do anything to meet budget lines

indians are the gold standard of clueless retards

>and the ability to destroy everything very easily

>company has say, five employees
>each of the five employees has a copy of the master repo, each working on fixing a different bug
>one employee accidentally the entire master repo
>another employee replaces the master repo with their local copy
>company continues on, the retard employee does not get the promotion he was hoping for

Some IT departments are retarded, due to not knowing how git works.

>I hate git for being shitty enough for this to happen, but by god, I hate management just as much.
but it's ust your ITs fault for not understanding how git works and not configuring it properly (e.g. forbid force push)

Why on earth would I shill an open source product?

>millions of man hours being lost from cryptic confusing commands
Yes.
>and the ability to destroy everything very easily.
No. You can only "destroy everything" if you don't understand Git.

Git is not perfect. Its biggest problem is its interface. Git was designed without any consideration towards user friendliness, and it has grown organically with a mess of Perl and Bash scripts, so not only does each command have a cryptic syntax that "made sense at the time," each command has a different cryptic syntax. Because of this, most people just rote-learn the basic commands that they need and they have no idea what to do to get themselves out of trouble.

Of course, Git is trendy right now, so a lot of IT companies are trying to pick it up. Some, like in OP's case, will use it for critical infrastructure without employing a single person who understands how it works. When they inevitably get the repository into a state that they don't know how to fix, they don't bother to learn, they just throw their hands up and blame Git. This is the mistake.

in defense of poo, the CS brogrammer garbage is worse

You don't like git, so you're either:
>I don't use version control! Haha! Now where was that function definition, I think we're using functions.1.old.new.redone.py now???
or you're
>SVN and CVS are old so they're good even though they're relatively primitive, let me just set up a new SVN server on my dedicated server which is an old Core 2 Duo rig in my basement hooked up over WiFi. I don't understand, why do hundreds of people complain about problems getting a copy of my GMOD mod over SVN?

If you code, use version control. If you code with a team, use fucking version control. If you're using version control, use fucking git. If you're too stupid to figure out git, you're too stupid to write good software.

That all being said, fuck the IT guy for not having backups.

You're the first type I see.
Don't you feel disgusting when you open your projects and have to scroll past 30 lines of commented out code, with the caption "commented out 2008-05-04 by user, saving just in case we need to roll back"?

Every developer I've had the displeasure of working with who eschews version control does this garbage.

If you're too stupid to operate a simple program, you're too stupid to write good software. Please stop writing software and ruining it for everyone else.

Have you tried using this new site called google? It's great, you put in your questions and it finds other people who have answered it. Usually on stackexchange.

The problem ain't git, the problem is the millions of retards that put git on their CVs when the only thing they know is pull and push origin master.

Git is very simple, you just need to read the fucking manual instead of stackoverflowing every single thing you want to do.

Fucking pajeets

>read the fucking manual
but as a busy millenial i dont have enough time to use capitalization or punctuation, let alone read complicated technical documentation that will help me write quality software everything is all about going fast and breaking things today dont you know anything grampa desu senpai i cant believe these old developers not taking advantage of the internet it triggers me so hard TRIGGER WARNING SHITLORD OMG LOL

Should I suggest my company uses GIT? The (mostly backend) web developers are literal retards. I think I am twice as fast as they are after 1 year, being 2 years behind them and coming in with 0 experience.

Right now they just code right on the server remote, and back it up daily. We haven't really had any issues so far... team is about 5-6 people. My fear is its going to slow them down so much we will never get anything done.

What are you going to do if i use SVN bitch nigga

Try my darndest not work with you or use your repositories for anything, and shit-talk your choice of tools and abilities as a developer if it comes up in discussion, with a heavy emphasis on assuming that you're too stupid to read the manual for git.

And what if i can use both Git and SVN for working on different projects with different people?
I actually know both and you know only one, how hard should i shit talk your inability to use different tools? Are you stupid or something?

I can use SVN just fine. It's just not 2005 anymore so it's kind of a piece of shit.

>comparing to a boolean constant

Get out

How do I git gud at git? Real gud

using it

I'm pretty much limited to diffing between commits, status, log, push, pull, and unstaging. Pajeet tier.

>doesn't know how to use ___
>blames ___ when it doesn't work

How do I become a normie like you?

Because she is a strong black woman?

I dont get this. Isnt the point of gitHUB to have a backup in the cloud?

Fuck off steve you faggot

Many companies run their internal VCS, continuous integration, backup, etc. on the LAN instead of using a cloud service; some projects can't use third-party services for legal or regulatory reasons, others have been ongoing since before those services existed, others still just don't have the need for it

You're worried about slowing them down with source control when they're editing code directly on the production servers? Holy fucking shit man, that's some 1998 amateur action. I mean shit even 1998 people were developing locally and using ftp to push the source to production.

>it's a normie thinks shithub itself is git post

>deploying test code directly to a production server
>no test servers, not even just a local httpd on developers' PCs
>no VCS, going to guess no other form of backup either
Potentially slowing them down should be the least of your worries, this is a real amateur hour team if they're exposing themselves to so much needless risk every single day of losing everything or knocking out the production server

Reminds me of when I did team projects in college and emailing .zip snapshots of our code back and forth was still the only form of "version control" we knew, some practices are so bad that you need to show them another way before they burn themselves and your entire team gets sacked

>he changes the head and pushes changes
So?
It sounds like you're the one who can't use git

because she looks like a friggin alien with those long arms and weird hair

Complain to the higher ups, the guys who control the IT lead. Tell them about how fucked he is.

Since this seems to be the git general thread, I'll ask:

So let's say my repo has 5 branches being worked by five different teams. Let's say I need to push a critical bugfix ASAP into all 5 branches. How do I go about doing this? In bitbucket sometimes I see people pushing into multiple branches in one commit, how do I do that?

>>"I don't know how to use the tool I was given to work with." scenario.
It's managements responsibility to arrange training for their employees if they are supposed to use technologies they don't know. This training doesn't have to be more than: Read this compact git guide 1 hour per work day until you are finished and understand it.
If you just hand someone inexperienced a git access and all he ever does is pull and auto push that's what happens.

You know whats 2spooky4me? That feeling comes from thousands of years of evolution - something in our past has conditioned us to find something about that image threatening and posing a danger.

I wonder what kind of fucked up shit we experienced back then to cause that.

Realistically though it's probably because she resembles a giant fucking Emu

>back up anyway
>IT finds out
>Why the fuck are you undermining me user
>IT hates you and starts to talk shit
>you become an easy target for anyone who wants to get along with IT
>start to be isolated
>management noticed you're not getting along with the group
>get fired

the corporate world is such fucking shit; it's 90% politiking and 10% actual programming

I'd off myself if my name was that dumb.

develop and commit it to one branch. Grab the hash of the new commit and use cherry-pick to put it on each other branch

>meme SJW thing
Sup Forums pls go

ITT: people too dumb to use git
therefore too dumb to use version control
therefore too dumb to write good software

Thinking version control is backups retarded though, those people deserve what happened to them.

You're thinking of Github user, and even that has legitimate devs when you ply away the attention whores, because your user-page shows how many commits you have
Also, git was writen to help with the development of the linux kernel, and you can say many things about Torvalds, but you can't say he's all about being PC

>Perforce
well then, the industry standard is shrinking user

I remember using svn and how trashy it was and slow, then we get git which is blazingly fast, better CLI, and people are bitching that its difficult. Must be the Gen Z fags.

but reading a manpage is haard!
why don't we just use dropbox :)

Similar tales have happened with Subversion.

Oh, they do. They do.

Fine: ARC, LHA, LZH, whatever was the flavour at the time.

a lotttt of people that use git basically only know how to commit, push, and pull.

as an example, i'm willing to bet that at least 25% of github users don't even realize that you can call `git clone` with an optional target path/directory. as far as obscure git tricks go, that's akin to saying "protip: turn your stove heat to *maximum* to boil water faster", but i'd be shocked if more than 80% of github users know this off the bat.

commit push pull merge mergetool and branch are the only commands these people need, if you run into a situation where you want git to do something different you can just look at the manpage or google, why would I learn 100 commands before using the tool? If one would run into OPs situation he could find out about reflog in 2 minutes.