Faits : A. A.a. Ressortissant égyptien né en 1968, X._ est entré en Suisse le 28 octobre 2005, au bénéfice d'un visa d'entrée en vue de mariage. Le 6 décembre 2005, il a épousé Y._, ressortissante marocaine née en 1971, alors titulaire d'une autorisation d'établissement. L'intéressé a été mis au bénéfice d'une autorisation de séjour au titre de regroupement familial, laquelle a été régulièrement renouvelée jusqu'au 5 décembre 2010. Trois enfants sont issus de cette union: A._, née en 2006, B._, né en 2009 et C._, né en 2010. Y._ a obtenu la nationalité suisse en février 2009. A.b. Le 5 novembre 2008, Y._ a déposé une requête de mesures protectrices de l'union conjugale. Par ordonnance du 8 décembre 2008, statuant sur mesures pré-provisionnelles urgentes, le Tribunal de première instance du canton de Genève (ci-après: Tribunal de première instance) a autorisé les époux à constituer un domicile séparé, attribué la garde de leur fille A._ à Y._, fixé un droit de visite en faveur de X._ à raison d'un week-end sur deux et durant la moitié des vacances scolaires et condamné l'intéressé à verser à son épouse, par mois et par avance, allocations familiales non comprises, la somme de 700 fr. à titre de contributions d'entretien de la famille. Par jugement du 3 septembre 2009, statuant sur mesures protectrices de l'union conjugale, le Tribunal de première instance a autorisé les époux à constituer un domicile séparé, attribué la garde de A._ et de B._ à Y._, fixé un droit de visite en faveur de X._ à raison de deux demi-journées par semaine, enjoint l'intéressé à quitter le domicile conjugal dans un délai d'un mois à compter du prononcé du jugement et l'a condamné à verser à son épouse, par mois et par avance, allocations familiales non comprises, la somme de 594 fr. à titre de contributions d'entretien de la famille. Sur demande de l'Office cantonal de la population du canton de Genève (ci-après: l'Office cantonal), X._ lui a fait savoir, le 12 juillet 2010, qu'aucune procédure de divorce n'était envisagée, qu'il souhaitait reprendre la vie commune, qu'il s'occupait de ses enfants deux fois par semaine, qu'il avait versé une pension alimentaire jusqu'au mois d'avril 2010 et qu'il reprendrait ces versements dès qu'il retrouverait un emploi. Par courrier du 24 juillet 2010, Y._ a indiqué à l'Office cantonal qu'une procédure de divorce était "très envisagée" pour sa part, que ses enfants voyaient leur père deux fois par semaine, que ce dernier ne versait plus la pension alimentaire depuis quelques mois et que le droit de visite était "plus ou moins" respecté. Le 12 janvier 2011, Y._ a déposé une demande en divorce. Le Service de protection des mineurs du canton de Genève a rendu un rapport d'évaluation le 7 avril 2011, indiquant notamment que X._ rencontrait ses enfants de manière périodique, qu'il arrivait qu'il s'absente durant plusieurs semaines, sans informer son épouse et qu'il était conforme à l'intérêt des enfants de permettre le maintien de contacts fréquents entre les enfants et leur père. Par nouveau jugement sur mesures protectrices de l'union conjugale du 30 juin 2011, le Tribunal de première instance a attribué à Y._ la garde de ses trois enfants, réservé à X._ un droit de visite à raison de deux demi-journées par semaine, sauf accord contraire des parents, et constaté qu'il n'y avait pas lieu de fixer de contributions d'entretien de la famille à la charge de l'intéressé avec effet au 1er juillet 2011. Le divorce a été prononcé par jugement du 19 octobre 2012. Le Tribunal de première instance a attribué l'autorité parentale et la garde des trois enfants à la mère, réservé à X._ un droit de visite à raison de deux demi-journées par semaine, sauf accord contraire des parents, instauré une curatelle d'organisation et de surveillance du droit de visite et dispensé l'intéressé de toute contribution d'entretien en faveur des enfants. Le 8 mars 2013, saisi d'un appel formé par X._, la Cour de justice du canton de Genève a notamment fixé le droit de visite en sa faveur à raison de trois demi-journées par semaine, sauf accord contraire des parties. Ce droit de visite pouvait être étendu par le curateur à un week-end sur deux et la moitié des vacances scolaires dès que le père disposerait d'un logement adéquat pour accueillir ses enfants. Par courrier du 19 juin 2014, la curatrice a prévu que le droit de visite s'exercerait tous les mardis, samedis ou dimanches, de 10h00 à 18h30 et que les jeudis, le recourant viendrait chercher ses enfants à 10h00, les garderait pour la nuit et les ramènerait le lendemain à 10h00. Un bilan était prévu fin août 2014 pour étudier la possibilité d'un élargissement du droit de visite à un week-end sur deux et à une nuitée par semaine. A.c. Entre 2007 et 2014, Y._ et X._ ont occupé les services de police à plusieurs reprises: - Le 12 août 2007, la gendarmerie est intervenue alors que ._ hurlait dans la rue. L'intéressée a expliqué avoir été frappée à la tête et au ventre, alors qu'elle était enceinte. Dans un rapport établi ultérieurement, Y._ a précisé que l'auteur de ces actes était son époux et que, quelques jours après les faits, sa grossesse s'était terminée par une fausse-couche. L'intéressée a renoncé à déposer une plainte pénale. - Le 15 avril 2010, Y._ a déposé une plainte pénale contre son mari. Il ressort du rapport de la police judiciaire de Genève rédigé le même jour que Y._ avait demandé de l'aide car son époux, présent dans l'appartement conjugal, voulait la violer et la frapper. L'intéressée a déclaré qu'elle était séparée de son époux depuis le début de l'année 2008, que ce dernier n'avait jamais voulu quitter l'appartement familial et que leur situation familiale s'était dégradée depuis la naissance de leur fille en 2006. Y._ a ajouté que son époux l'avait menacée d'enlever leurs enfants et qu'il lui arrivait régulièrement de la contraindre sexuellement à raison de trois ou quatre fois par mois depuis 2008 et que c'était ainsi que leurs deux derniers enfants avaient été conçus. X._ a exposé pour sa part que, faute de nouveau logement, il n'avait pas pu quitter leur appartement et qu'il avait continué à entretenir des relations sexuelles avec son épouse qui était consentante. Il contestait par ailleurs avoir menacé d'enlever leurs enfants. Par ordonnance du 10 juillet 2012, le Ministère public du canton de Genève a classé la plainte pénale, au motif notamment que Y._ n'avait produit aucun certificat médical attestant de lésions et que les déclarations des époux étaient contradictoires. Par ordonnance du 20 février 2013, le Ministère public a condamné l'Etat de Genève à verser à X._ la somme de 800 fr. en réparation du tort moral subi par la procédure pénale. - Le 6 septembre 2013, le Ministère public a condamné X._ à une peine pécuniaire de 40 jours amende à 30 fr., avec sursis pendant trois ans, pour lésions corporelles simples et dommages à la propriété. Cette condamnation a fait l'objet d'une opposition. - Par ordonnance pénale du 20 décembre 2013, le Ministère public a déclaré X._ coupable d'injures à l'encontre de son ex-épouse et l'a condamné à une peine pécuniaire de 30 jours amende à 30 fr., avec sursis et délai d'épreuve de trois ans. Par ordonnance du 8 janvier 2014, le Ministère public a maintenu l'ordonnance pénale précitée et transmis la procédure au Tribunal de police. Le 3 juin 2014, le Tribunal de police a reconnu le recourant coupable d'injure envers son ex-épouse et l'a condamné à une peine pécuniaire de 20 jours amende à 30 fr. le jour-amende, l'a mis au bénéfice du sursis et fixé le délai d'épreuve à trois ans. L'intéressé a formé appel contre ce jugement. A.d. X._ a été au bénéfice de prestations financières de l'Hospice général du 1er septembre au 30 novembre 2008. Depuis janvier 2012, l'intéressé dépend à nouveau de l'aide sociale. B. Le 26 novembre 2010, X._ a demandé le renouvellement de son autorisation de séjour. Le 12 mai 2011, l'Office cantonal s'est déclaré disposé à prolonger l'autorisation de séjour de X._, sous réserve de l'approbation de l'Office fédéral des migrations (ci-après: Office fédéral), devenu le Secrétariat d'Etat aux migrations depuis le 1er janvier 2015. Par décision du 29 décembre 2011, après avoir entendu l'intéressé, l'Office fédéral a refusé d'approuver la prolongation de l'autorisation de séjour de X._ et prononcé son renvoi de Suisse. Par arrêt du 28 juillet 2014, le Tribunal administratif fédéral a rejeté le recours interjeté par X._ contre cette décision. C. X._ interjette un recours en matière de droit public au Tribunal fédéral contre l'arrêt rendu le 28 juillet 2014 par le Tribunal administratif fédéral. Il conclut à l'annulation de l'arrêt attaqué et au renouvellement de son autorisation de séjour, subsidiairement au renvoi de la cause à l'Office fédéral pour nouvelle décision dans le sens des considérants. Il requiert en outre le bénéfice de l'assistance judiciaire. L'Office fédéral conclut au rejet du recours, alors que le Tribunal administratif fédéral renonce à prendre position. Par ordonnance présidentielle du 12 septembre 2014, la IIe Cour de droit public a accordé l'effet suspensif au recours. Le même jour, le Tribunal fédéral a renoncé provisoirement à demander une avance de frais et a informé l'intéressé qu'il serait statué ultérieurement sur sa demande d'assistance judiciaire.